zoukankan      html  css  js  c++  java
  • JeeSite使用(一)大步跑起来

    背景:近期准备换个工作,想对之前自己写的代码进行重构,选择了JeeSite

    需求:跑起来才是硬道理

    方法:1.官方文档有坑,别信他

          2.官方文档有坑,别信他

          3.官方文档有坑,别信他

    一、检出项目

    git clone https://gitee.com/thinkgem/jeesite4.git

    二、个性化配置

      1、修改文件夹名为 myjeesite 

       2、IDEA —— Import Project —— myjeesit/root/pom.xml —— NEXT —— 勾选【Import Maven projects automatically—— 一路NEXT —— FINISH

       3、配置application.yml

    #======================================#
    #========== Project settings ==========#
    #======================================#
    
    # 产品或项目名称、软件开发公司名称
    productName: myjeesite
    companyName: ThinkGem
    
    # 产品版本、版权年份
    productVersion: V4.1
    copyrightYear: 2018
    
    #是否演示模式
    demoMode: false
    
    #======================================#
    #========== Server settings ===========#
    #======================================#
    
    server:
    
      port: 8980
      servlet:
        context-path: /jessite-web
      tomcat:
        uri-encoding: UTF-8
        
    #======================================#
    #========== Database sttings ==========#
    #======================================#
    
    # 数据库连接
    jdbc: 
      
      # Mysql 数据库配置
      type: mysql
      driver: com.mysql.jdbc.Driver
      url: jdbc:mysql://192.168.0.131:3306/jeesite?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
      username: root
      password: root
      testSql: SELECT 1
    
    #  # Oracle 数据库配置
    #  type: oracle
    #  driver: oracle.jdbc.driver.OracleDriver
    #  url: jdbc:oracle:thin:@127.0.0.1:1521/orcl
    #  username: jeesite
    #  password: jeesite
    #  testSql: SELECT 1 FROM DUAL
    
    #  # Sql Server 数据库配置
    #  type: mssql
    #  driver: net.sourceforge.jtds.jdbc.Driver
    #  url: jdbc:jtds:sqlserver://127.0.0.1:1433/jeesite
    #  username: jeesite
    #  password: jeesite
    #  testSql: SELECT 1
    
    #  # PostgreSql 数据库配置
    #  type: postgresql
    #  driver: org.postgresql.Driver
    #  url: jdbc:postgresql://127.0.0.1:5432/jeesite
    #  username: jeesite
    #  password: jeesite
    #  testSql: SELECT 1
    
    #  # 连接信息加密
    #  encrypt:
    #  
    #    # 加密连接用户名
    #    username: false
    #    # 加密连接密码
    #    password: true
    #
    #  # 数据库连接池配置
    #  pool:
    #  
    #    # 初始化连接数
    #    init: 1
    #    # 最小连接数
    #    minIdle: 3
    #    # 最大连接数
    #    maxActive: 20  # 数据库连接池配置
    #
    #    # 获取连接等待超时时间,单位毫秒(1分钟)(4.0.6+)
    #    maxWait: 60000
    #    
    #    # 从池中取出连接前进行检验,如果检验失败,则从池中去除连接并尝试取出另一个(4.0.6+)
    #    testOnBorrow: false
    #    testOnReturn: false
    #    
    #    # 间隔多久才进行一次检测,检测需要关闭的空闲连接,单位毫秒(1分钟)(4.0.6+)
    #    timeBetweenEvictionRunsMillis: 60000
    #    
    #    # 一个连接在池中最小空闲的时间,单位毫秒(20分钟)(4.0.6+)
    #    minEvictableIdleTimeMillis: 1200000
    #    # 一个连接在池中最大空闲的时间,单位毫秒(30分钟)(4.1.2+)
    #    maxEvictableIdleTimeMillis: 1800000
    #    
    #    # 是否自动回收泄露的连接和超时时间,单位秒(35分钟)(4.0.6+)
    #    removeAbandoned: true
    #    removeAbandonedTimeout: 2100
    #
    #    # Oracle 下会自动开启 PSCache,并指定每个连接上 PSCache 大小。若不指定,则与 maxActive 相同(4.1.5+)
    #    maxPoolPreparedStatementPerConnectionSize: ~
    
    #  # 多数据源名称列表,多个用逗号隔开,使用方法:@MyBatisDao(dataSourceName="ds2")
    #  dataSourceNames: ds2
    #  
    #  # 多数据源配置:ds2
    #  ds2:
    #    type: mysql
    #    driver: com.mysql.jdbc.Driver
    #    url: jdbc:mysql://127.0.0.1:3306/jeesite2?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
    #    username: root
    #    password: 123456
    #    testSql: SELECT 1
    #    encrypt:
    #      username: false
    #      password: true
    #    pool:
    #      init: 1
    #      minIdle: 3
    #      maxActive: 20
          
    #  # JTA 分布式事务(v4.0.4+)
    #  jta:
    #    enabled: false
    #  注意:如果报  oracle.jdbc.xa.OracleXAResource.recover 错误,则需要授权如下:
    #  grant select on sys.dba_pending_transactions to jeesite;
    #  grant select on sys.pending_trans$ to jeesite;
    #  grant select on sys.dba_2pc_pending to jeesite;
    #  grant execute on sys.dbms_system to jeesite;
    
    #  # 事务超时时间,单位秒(30分钟)(v4.1.5+)
    #  transactionTimeout: 1800
    
    #  # 表名前缀
    #  tablePrefix: js_
    
    #======================================#
    #========== Spring settings ===========#
    #======================================#
    
    spring:
      
      # 应用程序名称
      application:
        name: jeesite-web
        
      # 当前环境名称(注意:不可设置为 test 它是单元测试专用的名称)
      profiles:    
        active: default
        
      # 打印横幅
      main:
        bannerMode: "off"
        
    #  # Redis 连接参数 (RedisProperties)
    #  redis:
    #    host: 127.0.0.1
    #    port: 6379
    #    ssl: false
    #    database: 0
    #    password: 1234
    #    timeout: 2000
    #    lettuce:
    #      pool:
    #        # 最大空闲连接数
    #        maxIdle: 3
    #        # 最大活动连接数
    #        maxActive: 20
    
    #  # 缓存配置
    #  cache:
    #    # 缓存及会话共享(专业版)
    #    isClusterMode: false
    #    # 清理全部缓存按钮所清理的缓存列表
    #    clearNames: sysCache,corpCache,userCache,cmsCache,msgPcPoolCache
    
    # 日志配置
    logging:
      config: classpath:config/logback-spring.xml
      
    #======================================#
    #========== System settings ===========#
    #======================================#
    
    # 管理基础路径
    #adminPath: /a
    
    # 前端基础路径
    #frontPath: /f
    
    # 分页相关
    #page:
    #
    #  # 分页默认大小
    #  pageSize: 20
    
    # 用户相关
    #user:
    #
    #  # 指定超级管理员编号(研发团队使用的账号)
    #  superAdminCode: system
    #
    #  # 超级管理员获取菜单的最小权重(默认20;>=40二级管理员;>=60系统管理员;>=80超级管理员)
    #  superAdminGetMenuMinWeight: 40
    #
    #  # 系统管理员角色编号(客户方管理员使用的角色)
    #  corpAdminRoleCode: corpAdmin
    #
    #  # 用户类型配置信息(employee员工,member会员,btype往来单位,persion个人,expert专家,...),JSON 格式说明如下:
    #  # {"用户类型":{"dao":"Dao的Bean名称","loginView":"登录页面视图","indexView":"主框架页面视图,支持 redirect: 前缀"}}
    #  userTypeMap: >
    #    {
    #      "employee":{"dao":"employeeDao","loginView":"","indexView":"modules/sys/sysIndex"},
    #      "member":{"dao":"memberDao","loginView":"","indexView":"modules/sys/sysIndexMember"},
    #      "btype":{"dao":"btypeInfoDao","loginView":"","indexView":"modules/sys/sysIndexBtype"},
    #      "expert":{"dao":"expertDao","loginView":"","indexView":"modules/sys/sysIndexExpert"}
    #    }
    #
    #  # 数据权限设置参数,可新增自定义数据权限,moduleCode: 针对模块, ctrlPermi: 权限类型, 0全部  1拥有权限  2管理权限
    #  dataScopes: >
    #    [{
    #      moduleCode: "core",
    #      ctrlPermi: "0",
    #      ctrlName: "机构权限",
    #      ctrlName_en: "Office",
    #      ctrlType: "Office",
    #      ctrlDataUrl: "/sys/office/treeData",
    #      chkboxType: {"Y":"ps","N":"ps"},
    #      expandLevel: -1,
    #      remarks: ""
    #    },{
    #      moduleCode: "core",
    #      ctrlName: "公司权限",
    #      ctrlName_en: "Company",
    #      ctrlType: "Company",
    #      ctrlPermi: "0",
    #      ctrlDataUrl: "/sys/company/treeData",
    #      chkboxType: {"Y":"ps","N":"ps"},
    #      expandLevel: -1,
    #      remarks: ""
    #    },{
    #      moduleCode: "core",
    #      ctrlName: "角色权限",
    #      ctrlName_en: "Role",
    #      ctrlType: "Role",
    #      ctrlPermi: "2",
    #      ctrlDataUrl: "/sys/role/treeData",
    #      chkboxType: {"Y":"ps","N":"ps"},
    #      expandLevel: -1,
    #      remarks: ""
    #    }]
    #    
    #  # 管理功能的控制权限类型(1拥有的权限 2管理的权限)(v4.1.5+)
    #  adminCtrlPermi: 2
    #
    #  # 多租户模式(SAAS模式)(专业版)
    #  useCorpModel: false
    
    # 菜单管理
    #menu:
    #  # 根据模块状态去更新相连的菜单状态(仅作为微服务时设为false)
    #  updateStatusByModuleStatus: true
    
    # 国际化管理(专业版)
    #lang:
    #  enabled: false
    #  
    #  # 默认语言(4.1.3+)
    #  defaultLocale: zh_CN
    #  # 默认时区(4.1.3+)
    #  defaultTimeZone: GMT+08:00
      
    # 任务调度(个人版)
    #job:
    #  enabled: false
    #
    #  # 是否自动启动任务调度(可关闭)
    #  autoStartup: true
    #
    #  # 任务调度启动延迟设置(单位:秒)(建议设置项目启动完成后的时间)
    #  startupDelay: 60
    #  
    #  # 任务调度线程池
    #  threadPool:
    #    threadCount: 10
    #    threadPriority: 5
    #
    #  # 调度设置,集群中每一个实例都必须使用相同的instanceName名称 (区分特定的调度器实例)
    #  # 每一个instanceId必须不同,设置AUTO则自动生成
    #  scheduler:
    #    instanceName: JeeSiteScheduler
    #    instanceId: AUTO
    #
    #  # 任务调度集群设置
    #  jobStore:
    #    isClustered: true
    #    dataSourceName: job
    #    clusterCheckinInterval: 1000
    #
    #  # 调度日志
    #  log:
    #    # 计划调度日志
    #    scheduler:
    #      enabled: true
    #      # 是否只保存错误日志
    #      errorLevel: true
    #    # 任务执行日志
    #    jobDetail:
    #      enabled: true
    #      # 是否只保存错误日志
    #      errorLevel: true
    #    # 计划触发日志
    #    trigger:
    #      enabled: false
    
    # 代码生成
    #gen:
    #  enabled: true
    
    # 系统监控
    #state:
    #  enabled: true
    
    #======================================#
    #========= Framework settings =========#
    #======================================#
    
    # Shiro 相关配置
    #shiro:
    #
    #  #索引页路径
    #  defaultPath: ${shiro.loginUrl}
    #
    #  # 登录相关设置
    #  loginUrl: ${adminPath}/login
    #  logoutUrl: ${shiro.loginUrl}
    #  successUrl: ${adminPath}/index
    #
    ##  # Apereo CAS 相关配置(个人版)
    ##  casServerUrl: http://127.0.0.1:8981/cas
    ##  casClientUrl: http://127.0.0.1:8980/js
    ##  loginUrl: ${shiro.casServerUrl}?service=${shiro.casClientUrl}${adminPath}/login-cas
    ##  logoutUrl: ${shiro.casServerUrl}/logout?service=${shiro.loginUrl}
    ##  successUrl: ${shiro.casClientUrl}${adminPath}/index
    #
    #  # 简单 SSO 登录相关配置
    #  sso:
    #  
    #    # 如果启用/sso/{username}/{token}单点登录,请修改此安全key并与单点登录系统key一致。
    #    secretKey: ~
    #
    #    # 是否加密单点登录安全Key
    #    encryptKey: true
    #
    #  # 登录提交信息加密(如果不需要加密,设置为空即可)
    #  loginSubmit:
    #    
    #    # 登录提交信息安全Key,加密用户名、密码、验证码,后再提交(key设置为3个,用逗号分隔)
    #    secretKey: thinkgem,jeesite,com
    #  
    #  # 记住我密钥设置(设置为空则使用默认)
    #  rememberMe:
    #    # 密钥必须通过 com.jeesite.common.shiro.web.RememberMeManager 的main方法生成
    #    secretKey: ~
    #  
    #  # 指定获取客户端IP的Header名称,防止IP伪造。指定为空,则使用原生方法获取IP。
    #  remoteAddrHeaderName: X-Forwarded-For
    #  
    #  # 允许的请求方法设定,解决安全审计问题
    #  allowRequestMethods: GET,POST
    #  
    #  # 是否允许账号多地登录,如果设置为false,同一个设备类型的其它地点登录的相同账号被踢下线
    #  isAllowMultiAddrLogin: true
    #  
    #  # 是否允许多账号多设备登录,如果设置为false,其它地点登录的相同账号全部登录设备将被踢下线
    #  isAllowMultiDeviceLogin: true
    #  
    #  # 是否允许刷新主框架页,如果设置为false,刷新主页将导致重新登录。如安全性比较高的,如银行个人首页不允许刷新。
    #  isAllowRefreshIndex: true
    #  
    #  # 是否允许嵌入到外部网站iframe中(true:不限制,false:不允许)
    #  isAllowExternalSiteIframe: true
    #  
    #  # 是否允许跨域访问,如果允许,设置允许的域名,全部域名设置*号,如果不允许,此设置应该为空
    ##  accessControlAllowOrigin: http://demo.jeesite.com
    ##  accessControlAllowOrigin: '*'
    #
    #  # 是否允许接收跨域的Cookie凭证数据
    ##  accessControlAllowCredentials: true
    #
    #  # 允许的网站来源地址,不设置为全部地址(避免一些跨站点请求伪造CSRF)
    #  allowReferers: http://127.0.0.1,http://localhost
    #  allowReferers: ~
    #
    #  # 是否在登录后生成新的Session(默认false)
    #  isGenerateNewSessionAfterLogin: false
    #
    #  # 内部系统访问过滤器,可设置多个允许的内部系统IP地址串,多个用逗号隔开
    #  innerFilter.allowIp: 127.0.0.1
    #  
    #  # URI 权限过滤器定义
    #  filterChainDefinitions: |
    #    /ReportServer/** = user
    #    ${adminPath}/** = user
    
    # Session 相关
    #session:
    #
    #  # 全局会话超时,单位:毫秒, 20m=1200000ms, 30m=1800000ms, 60m=3600000ms, 12h=43200000ms, 1day=86400000ms
    #  sessionTimeout: 1800000
    #  
    #  # 手机APP设备会话超时参数设置,登录请求参数加 param_deviceType=mobileApp 时有效
    #  mobileAppSessionTimeout: 43200000
    #  
    #  # 定时清理失效会话,清理用户直接关闭浏览器造成的孤立会话
    #  sessionTimeoutClean: 1200000
    #  
    #  # 会话唯一标识SessionId在Cookie中的名称。
    #  sessionIdCookieName: jeesite.session.id
    #  
    #  # 共享的SessionId的Cookie名称,保存到跟路径下,第三方应用获取。同一域名下多个项目时需设置共享Cookie的名称。
    #  #shareSessionIdCookieName: ${session.sessionIdCookieName}
    
    # MyBatis 相关
    #mybatis:
    #
    #  # @MyBatisDao、Aliases 扫描基础包,如果多个,用“,”分隔
    #  scanBasePackage: com.jeesite.modules
    #  
    #  # TypeHandlers 扫描基础包,如果多个,用“,”分隔
    #  scanTypeHandlersPackage: ~
    #  
    #  # Mapper文件刷新线程
    #  mapper:
    #    refresh:
    #      enabled: true
    #      delaySeconds: 60
    #      sleepSeconds: 3
    #      mappingPath: mappings
      
    # Web 相关
    #web:
    #  
    #  # MVC 视图相关
    #  view:
    #    
    #    # 系统主题名称,主题视图优先级最高,如果主题下无这个视图文件则访问默认视图
    #    # 引入页面头部:'/themes/'+themeName+'/include/header.html'
    #    # 引入页面尾部:'/themes/'+themeName+'/include/footer.html'
    #    themeName: default
    #
    #  # MVC 拦截器
    #  interceptor:
    #    
    #    # 后台管理日志记录拦截器
    #    log:
    #      enabled: true
    #      addPathPatterns: >
    #        ${adminPath}/**
    #      excludePathPatterns: >
    #        ${adminPath}/index,
    #        ${adminPath}/login,
    #        ${adminPath}/desktop,
    #        ${adminPath}/index/menuTree,
    #        ${adminPath}/sys/online/count,
    #        ${adminPath}/state/server/rtInfo,
    #        ${adminPath}/**/treeData,
    #        ${adminPath}/file/**,
    #        ${adminPath}/tags/*,
    #        ${adminPath}/msg/**
    #    
    #    # 前台自动切换到手机视图拦截器
    #    mobile:
    #      enabled: false
    #      addPathPatterns: >
    #        ${frontPath}/**
    #      excludePathPatterns: ~
    #        
    #  # 静态文件后缀,过滤静态文件,以提高访问性能。
    #  staticFile: .css,.js,.map,.png,.jpg,.gif,.jpeg,.bmp,.ico,.swf,.psd,.htc,.crx,.xpi,.exe,.ipa,.apk,.otf,.eot,.svg,.ttf,.woff,.woff2
    #  
    #  # 静态文件后缀,排除的url路径,指定哪些uri路径不进行静态文件过滤。
    #  staticFileExcludeUri: /druid/
    #  
    #  # 静态资源路径前缀,可做CDN加速优化
    #  staticPrefix: /static
    #  
    #  # 严格模式(更严格的数据安全验证)
    #  strictMode: false
    #  
    #  # 自定义正则表达式验证(主键、登录名)
    #  validator:
    #    id: '[a-zA-Z0-9_-/#u4e00-u9fa5]{0,64}'
    #    user.loginCode: '[a-zA-Z0-9_u4e00-u9fa5]{4,20}'
    #    
    #  # 核心模块的Web功能(仅作为微服务时设为false)
    #  core: 
    #    enabled: true
    #  
    #  # 在线API文档工具
    #  swagger: 
    #    enabled: true
    
    # 错误页面500.html是否输出错误信息(正式环境,为提供安全性可设置为false)
    #error:
    #  page:
    #    printErrorInfo: true
    
    #======================================#
    #======== FileUpload settings =========#
    #======================================#
    
    #file:
    #  enabled: true
    #
    #  # 文件上传根路径,设置路径中不允许包含“userfiles”,在指定目录中系统会自动创建userfiles目录,如果不设置默认为contextPath路径
    ##  baseDir: D:/jeesite
    #
    #  # 上传文件的相对路径(支持:yyyy, MM, dd, HH, mm, ss, E)
    #  uploadPath: '{yyyy}{MM}/'
    #  
    #  # 上传单个文件最大字节(500M),在这之上还有 > Tomcat限制 > Nginx限制,等。
    #  maxFileSize: 500*1024*1024
    #  
    #  # 设置允许上传的文件后缀
    #  imageAllowSuffixes: .gif,.bmp,.jpeg,.jpg,.ico,.png,.tif,.tiff,
    #  mediaAllowSuffixes: .flv,.swf,.mkv,webm,.mid,.mov,.mp3,.mp4,.m4v,.mpc,.mpeg,.mpg,.swf,.wav,.wma,.wmv,.avi,.rm,.rmi,.rmvb,.aiff,.asf,.ogg,.ogv,
    #  fileAllowSuffixes: .doc,.docx,.rtf,.xls,.xlsx,.csv,.ppt,.pptx,.pdf,.vsd,.txt,.md,.xml,.rar,.zip,7z,.tar,.tgz,.jar,.gz,.gzip,.bz2,.cab,.iso,.ipa,.apk,
    #  
    #  # 允许上传的文件内容类型(图片、word、excel、ppt)防止修改后缀恶意上传文件(默认不启用验证)
    ##  allowContentTypes: image/jpeg,image/gif,image/bmp,image/png,image/x-png,
    ##    application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,
    ##    application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,
    ##    application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation
    #
    #  # 是否开启分片上传
    #  chunked: false
    #  # 分片大小,单位字节(10M)
    #  chunkSize: 10485760
    #  # 最大上传线程数
    #  threads: 1
    #
    #  # 是否用文件流方式下载(支持断点续传)
    #  isFileStreamDown: true
      
    #视频转码
    #video:
    #
    #  # 视频格式转换  ffmpeg.exe 所放的路径
    #  ffmpegFile: d:/tools/video/ffmpeg-4.9/bin/ffmpeg.exe
    ##  ffmpegFile: d:/tools/video/libav-10.6-win64/bin/avconv.exe
    #  
    #  # 视频格式转换  mencoder.exe 所放的路径
    #  mencoderFile: d:/tools/video/mencoder-4.9/mencoder.exe
    #  
    #  # 将mp4视频的元数据信息转到视频第一帧
    #  qtFaststartFile: d:/tools/video/qt-faststart/qt-faststart.exe
    
    #======================================#
    #========== Message settings ==========#
    #======================================#
    
    # 消息提醒中心(专业版)
    #msg:
    #  enabled: true
    #  
    #  # 是否开启实时发送消息(保存消息后立即检查未读消息并发送),分布式部署下请单独配置消息发送服务,不建议开启此选项。
    #  realtime:
    #    # 是否开启
    #    enabled: true
    
    #  # 推送失败次数,如果推送次数超过了设定次数,仍不成功,则放弃并保存到历史
    #  pushFailNumber: 3
      
    #  # 邮件发送参数
    #  email:
    #    beanName: emailSendService
    #    fromAddress: test@163.com
    #    fromPassword: 123456
    #    fromHostName: smtp.163.com
    #    sslOnConnect: false
    #    sslSmtpPort: 994
    #
    #  # 短信网关
    #  sms:
    #    beanName: smsSendService
    #    url: http://localhost:80/msg/sms/send
    #    data: username=jeesite&password=jeesite.com
    #    prefix: 【JeeSite】
    #    suffix: ~
    
    #======================================#
    #========== Project settings ==========#
    #======================================#

       4、初始化数据库用web里的 init-data.sh 会报错,所以用官方推荐的方法处理(用完之后记得删,要不然哪天就又初始化了)

              

        5、修改后执行可初始化数据库

        

        6、启动项目(system————admin)

     

  • 相关阅读:
    Android 音视频同步机制
    FFmpeg命令行工具学习(五):FFmpeg 调整音视频播放速度
    Android框架式编程之RxJava
    Android Gradle 学习笔记(一):Gradle 入门
    FFmpeg开发实战(六):使用 FFmpeg 将YUV数据编码为视频文件
    SDL 开发实战(七): SDL 多线程与锁机制
    JNI实战(四):C 调用 Java
    JNI实战(三):JNI 数据类型映射
    JNI实战(二):Java 调用 C
    JNI实战(一):JNI HelloWorld
  • 原文地址:https://www.cnblogs.com/java-bhp/p/11101395.html
Copyright © 2011-2022 走看看