├── .gitignore
├── README.md
├── admin
├── pom.xml
└── src
│ └── main
│ ├── java
│ └── com
│ │ └── university
│ │ └── alumni
│ │ └── admin
│ │ ├── config
│ │ └── HibernateConfiguration.java
│ │ └── web
│ │ └── controller
│ │ └── UserController.java
│ ├── resources
│ ├── applicationContext.xml
│ ├── config
│ │ ├── common.properties
│ │ ├── database.properties
│ │ ├── email.properties
│ │ ├── menu.properties
│ │ ├── redis.properties
│ │ └── sms.properties
│ ├── log4j.properties
│ ├── log4j.properties.real
│ ├── spring-servlet.xml
│ ├── toolbox.xml
│ ├── velocity-toolbox.xml
│ └── velocity.properties
│ └── webapp
│ ├── WEB-INF
│ └── web.xml
│ └── index.jsp
├── client
├── pom.xml
└── src
│ └── main
│ ├── java
│ └── com
│ │ └── university
│ │ └── alumni
│ │ └── client
│ │ └── config
│ │ └── HibernateConfiguration.java
│ ├── resources
│ ├── applicationContext.xml
│ ├── config
│ │ ├── common.properties
│ │ ├── database.properties
│ │ ├── email.properties
│ │ ├── menu.properties
│ │ ├── redis.properties
│ │ └── sms.properties
│ ├── log4j.properties
│ ├── log4j.properties.real
│ ├── spring-servlet.xml
│ ├── toolbox.xml
│ ├── velocity-toolbox.xml
│ └── velocity.properties
│ └── webapp
│ ├── WEB-INF
│ └── web.xml
│ └── index.jsp
├── core
├── libs
│ ├── jcaptcha-all-1.0-RC6.jar
│ ├── patchca-0.5.0.jar
│ └── taobao-sdk-java-auto_1455552377940-20160505.jar
├── pom.xml
└── src
│ └── main
│ └── java
│ └── com
│ └── university
│ ├── alumni
│ ├── application
│ │ ├── UserService.java
│ │ └── impl
│ │ │ └── UserServiceImpl.java
│ ├── dao
│ │ ├── UserDao.java
│ │ └── impl
│ │ │ └── UserDaoImpl.java
│ └── entity
│ │ └── User.java
│ └── common
│ ├── config
│ └── ConfigService.java
│ ├── dao
│ ├── BaseDao.java
│ └── impl
│ │ └── BaseDaoImpl.java
│ ├── dto
│ └── JsonResponseResult.java
│ ├── filter
│ └── SpringMVCSessionFilter.java
│ ├── util
│ ├── BaseUtils.java
│ ├── CaptchaUtils.java
│ ├── NoCheckUrlsUtils.java
│ └── SHA256.java
│ └── velocity
│ └── tools
│ ├── JsonTool.java
│ ├── StaticFileTool.java
│ └── UploadFileTool.java
└── pom.xml
/.gitignore:
--------------------------------------------------------------------------------
1 | # Created by .ignore support plugin (hsz.mobi)
2 | ### Example user template template
3 | ### Example user template
4 |
5 | # IntelliJ project files
6 | .idea
7 | *.iml
8 | out
9 | gen
10 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # 河南工学院校友网管理系统
2 |
3 | [TOC]
4 |
5 | ## 项目来源
6 | 校友系统不只是一套软件系统,而是一整套“互联网+校友”的解决方案。校友系统通过帮助院校搭建校友互动平台和校友管理系统,拓展院校在校友服务方面的效率和范围,帮助院校提升校友工作信息化水平。
7 |
8 | ## 设计任务说明
9 | 按软件工程规范描述管理员端需求,细化用例规约,合理设计数据库,实现以下功能:
10 |
11 | ### 后台管理模块功能
12 | 1. 校友数据管理
13 | 1. 校友增删改
14 | 2. 校友快速搜索、高级搜索
15 | 3. 校友分组的增删改
16 | 4. 为校友重置登陆密码
17 | 提供以下10项校友统计方式:毕业年份、教育阶段、年龄、性别、民族、籍贯、政治面貌、单位性质、行业、所在省份。
18 | 2. 校友活动管理
19 | 1. 发起活动
20 | 2. 修改、删除活动
21 | 3. 管理活动报名情况(增删)
22 | 4. 导出活动报名表
23 | 5. 审核校友发起的活动
24 | 3. 新闻、公告管理
25 | 1. 新闻分类管理(增删改、排序)
26 | 2. 新闻管理(增删改、查询)
27 | 3. 公告管理(增删改、查询)
28 | 4. 校友资料管理
29 | 1. 校友文档分类管理(增删改、排序)
30 | 2. 校友文档管理(增删改、查询)
31 | 3. 校友相册管理(增删改、排序)
32 | 4. 校友视频分类管理(增删查改、排序)
33 | 5. 所有资料均可设置查看权限
34 | 6. 所有类型资料均支持校友上传,后台审核
35 |
36 | ### 前台模块功能
37 | 1. 网站首页
38 | 1. 能够显示出最新网站通知公告、校友新闻和学校活动,双击每个新闻通告的标题,可看到新闻内容,点击“更多”则进入该类的标题列表项。
39 | 2. 显示 Flash,可切换图片新闻,点击进入新闻内容。
40 | 3. 显示友情链接、网站帮助版权、信息和校庆专栏。
41 | 2. 校友新闻
42 | - 显示最新若干条校友新闻标题,点击后可进入详细内容,点击“更多”将显示该标题下的所有新闻列表。
43 | 3. 校友风采
44 | 1. 显示知名校友的姓名、简介和照片,点击“详细介绍”可了解该校友的详细情况。
45 | 2. 校友相册:对于每个注册成功的校友,可显示其名称、创建和更新日期和相册简介等。对于相册个人登录的情形,可进行新建和修改操作;查看他人相册,也可以发表评论。
46 | 4. 校友捐赠
47 | - 校友捐赠:显示最新若干条捐赠情况记录,点击“更多”进入所有列表,最新的若干条捐赠项目显示出来。向下滚动显示最新捐赠的捐赠校友的姓名、金额、捐赠日期等,并显示部分捐赠图片。
48 | 5. 校友服务
49 | - 学院简介及一些校内的相关部门链接。
50 | 6. 用户注册和登陆
51 | - 在某一页面左侧栏点击“登录校友网“即可进入登录页面,输入用户名、密码和验证码后点击“登录”,若信息正确则显示“登录成功”,同时异步更新页面的个人信息,显示个人头像、姓名、控制面板等信息;若看不清楚验证码,可点击验证码更换图片)。
52 | 7. 调查问卷功能:
53 | 1. 投票:阅读并填写调查问卷,点击投票按钮将投票信息上传至后台。
54 | 2. 查看结果:查看所有参与本次问卷调查校友的投票数据统计结果。
55 | 8. 站内搜索功能
56 |
57 | ## 项目介绍
58 | 本项目使用 Java 语言编写,后端框架 Spring + Springmvc + Hibernate ,前端框架 Jquery + Bootstrap ,数据库 mysql
59 |
60 | 未完待续……
--------------------------------------------------------------------------------
/admin/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | alumni
5 | com.university
6 | 1.0-SNAPSHOT
7 |
8 | 4.0.0
9 | admin
10 | war
11 |
12 |
13 | admin Maven Webapp
14 | http://maven.apache.org
15 |
16 |
17 |
18 | com.university
19 | core
20 | 1.0-SNAPSHOT
21 |
22 |
23 | junit
24 | junit
25 | 3.8.1
26 | test
27 |
28 |
29 |
30 | admin
31 |
32 |
33 |
--------------------------------------------------------------------------------
/admin/src/main/java/com/university/alumni/admin/config/HibernateConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.university.alumni.admin.config;
2 |
3 | import com.mchange.v2.c3p0.ComboPooledDataSource;
4 | import org.hibernate.SessionFactory;
5 | import org.springframework.beans.factory.annotation.Autowired;
6 | import org.springframework.context.annotation.Bean;
7 | import org.springframework.context.annotation.ComponentScan;
8 | import org.springframework.context.annotation.Configuration;
9 | import org.springframework.context.annotation.PropertySource;
10 | import org.springframework.core.env.Environment;
11 | import org.springframework.jdbc.core.JdbcTemplate;
12 | import org.springframework.orm.hibernate4.HibernateTransactionManager;
13 | import org.springframework.orm.hibernate4.LocalSessionFactoryBean;
14 | import org.springframework.transaction.annotation.EnableTransactionManagement;
15 |
16 | import javax.sql.DataSource;
17 | import java.beans.PropertyVetoException;
18 | import java.sql.SQLException;
19 | import java.util.Properties;
20 |
21 | @Configuration
22 | @EnableTransactionManagement
23 | @ComponentScan({"com.university.alumni.admin.config"})
24 | @PropertySource(value = "classpath:config/database.properties", ignoreResourceNotFound = false)
25 | public class HibernateConfiguration {
26 |
27 | @Autowired
28 | private Environment environment;
29 |
30 | @Bean
31 | public LocalSessionFactoryBean sessionFactory(DataSource dataSource) {
32 | LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
33 | sessionFactory.setDataSource(dataSource);
34 | sessionFactory.setPackagesToScan(new String[]{"com.university.alumni.entity"});
35 | sessionFactory.setHibernateProperties(hibernateProperties());
36 | return sessionFactory;
37 | }
38 |
39 | @Bean
40 | public JdbcTemplate jdbcTemplate(DataSource dataSource) throws PropertyVetoException, SQLException {
41 | JdbcTemplate jdbcTemplate = new JdbcTemplate();
42 | jdbcTemplate.setDataSource(dataSource);
43 | return jdbcTemplate;
44 | }
45 |
46 | @Bean
47 | public DataSource dataSource() throws PropertyVetoException, SQLException {
48 | String driver = environment.getRequiredProperty("database.connection.driver");
49 | String url = environment.getRequiredProperty("database.connection.url");
50 | String user = environment.getRequiredProperty("database.connection.user");
51 | String password = environment.getRequiredProperty("database.connection.password");
52 | return getDataSource(driver, url, user, password);
53 | }
54 | public DataSource getDataSource(String driver, String url, String user, String password) throws PropertyVetoException, SQLException {
55 | ComboPooledDataSource dataSource = new ComboPooledDataSource();
56 | dataSource.setDriverClass(driver);
57 | dataSource.setJdbcUrl(url);
58 | dataSource.setUser(user);
59 | dataSource.setPassword(password);
60 | dataSource.setMinPoolSize(5);
61 | dataSource.setMaxPoolSize(30);
62 | dataSource.setMaxIdleTime(30);
63 | dataSource.setAcquireIncrement(3);
64 | // dataSource.setMaxStatements(1000);
65 | dataSource.setInitialPoolSize(10);
66 |
67 | dataSource.setAcquireRetryAttempts(30);
68 | dataSource.setAcquireRetryDelay(1000);
69 | dataSource.setTestConnectionOnCheckout(false);
70 | dataSource.setTestConnectionOnCheckin(true);
71 | dataSource.setBreakAfterAcquireFailure(false);
72 |
73 | dataSource.setPreferredTestQuery("select id from test where id = 1");
74 | dataSource.setMaxStatements(0);
75 | dataSource.setIdleConnectionTestPeriod(60);
76 | dataSource.setCheckoutTimeout(10000);
77 | dataSource.setAutoCommitOnClose(false);
78 |
79 | return dataSource;
80 | }
81 | private Properties hibernateProperties() {
82 | Properties properties = new Properties();
83 | properties.put("hibernate.autoReconnect", environment.getProperty("database.hibernate.autoReconnect"));
84 | properties.put("hibernate.connection.release_mode", environment.getProperty("database.hibernate.connection.release_mode"));
85 | properties.put("hibernate.temp.use_jdbc_metadata_defaults", environment.getProperty("database.hibernate.temp.use_jdbc_metadata_defaults"));
86 | properties.put("hibernate.hbm2ddl.auto", environment.getProperty("database.hibernate.hbm2ddl.auto"));
87 | properties.put("hibernate.dialect", environment.getProperty("database.hibernate.dialect"));
88 | properties.put("hibernate.show_sql", environment.getProperty("database.hibernate.show_sql"));
89 | properties.put("hibernate.format_sql", environment.getProperty("database.hibernate.format_sql"));
90 | properties.put("hibernate.use_sql_comments", environment.getProperty("database.hibernate.use_sql_comments"));
91 | properties.put("hibernate.jdbc.batch_size", environment.getProperty("database.hibernate.jdbc.batch_size"));
92 | properties.put("hibernate.connection.isolation", environment.getProperty("database.hibernate.connection.isolation"));
93 | return properties;
94 | }
95 |
96 | @Bean
97 | @Autowired
98 | public HibernateTransactionManager transactionManager(SessionFactory s) {
99 | HibernateTransactionManager txManager = new HibernateTransactionManager();
100 | txManager.setSessionFactory(s);
101 | return txManager;
102 | }
103 | }
104 |
105 |
106 |
--------------------------------------------------------------------------------
/admin/src/main/java/com/university/alumni/admin/web/controller/UserController.java:
--------------------------------------------------------------------------------
1 | package com.university.alumni.admin.web.controller;
2 |
3 | import com.university.alumni.application.UserService;
4 | import org.springframework.beans.factory.annotation.Autowired;
5 | import org.springframework.stereotype.Controller;
6 | import org.springframework.web.bind.annotation.RequestMapping;
7 |
8 | import javax.servlet.http.HttpServletRequest;
9 | import javax.servlet.http.HttpServletResponse;
10 |
11 | /**
12 | * Created by wm on 2017/1/19.
13 | */
14 | @Controller
15 | @RequestMapping("/user")
16 | public class UserController {
17 | @Autowired
18 | private UserService userService;
19 |
20 | @RequestMapping("/addUser")
21 | public void addUser(String name , String age, HttpServletRequest request, HttpServletResponse response){
22 | userService.addUser(name, age);
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/admin/src/main/resources/applicationContext.xml:
--------------------------------------------------------------------------------
1 |
2 |
20 |
21 |
22 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 | org.springframework.web.servlet.view.JstlView
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 | ../jsp/uploadCode
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
--------------------------------------------------------------------------------
/admin/src/main/resources/config/common.properties:
--------------------------------------------------------------------------------
1 | defaultPoolSize =5
2 | host=http://dev202.admin.cc.cmsa.cn
3 | pageSize=50
4 | examHost=172.21.120.201:15200
5 | adminHost=127.0.0.1:4040
--------------------------------------------------------------------------------
/admin/src/main/resources/config/database.properties:
--------------------------------------------------------------------------------
1 | ####################jdbc.properties#########################################
2 | database.connection.driver = com.mysql.jdbc.Driver
3 | database.connection.user = root
4 | database.connection.password =root
5 | database.connection.url = jdbc:mysql://localhost:3306/alumni?useUnicode=true&characterEncoding=utf8
6 |
7 |
8 |
9 | database.hibernate.schema_update = none
10 | database.hibernate.max_fetch_depth=0
11 | database.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect
12 | database.hibernate.show_sql = false
13 | database.hibernate.format_sql = true
14 | database.hibernate.use_sql_comments = true
15 | database.hibernate.jdbc.batch_size = 50
16 | database.hibernate.hbm2ddl.auto = none
17 | database.hibernate.connection.isolation=2
18 | database.hibernate.connection.release_mode=after_transaction
19 | database.hibernate.autoReconnect = true
20 | database.hibernate.temp.use_jdbc_metadata_defaults = false
21 | ####################jdbc.properties#########################################
--------------------------------------------------------------------------------
/admin/src/main/resources/config/email.properties:
--------------------------------------------------------------------------------
1 | ####################email.properties#########################################
2 | smtpHostName=smtp.exmail.qq.com
3 | smtpEmail=no-reply@imsa.org.cn
4 | smtpPass=imsaORG123
5 | ##############email.properties##############################
--------------------------------------------------------------------------------
/admin/src/main/resources/config/menu.properties:
--------------------------------------------------------------------------------
1 | ############## menuOrder.properties ##############################
2 | menuOrder.super=
3 | menuOrder.admin=
4 | menuOrder.user=
5 | ############## menuOrder.properties ##############################
--------------------------------------------------------------------------------
/admin/src/main/resources/config/redis.properties:
--------------------------------------------------------------------------------
1 | redis_ip=127.0.0.1
2 | redis_port=6379
3 | redis_passKey=imsaRedis01
4 |
--------------------------------------------------------------------------------
/admin/src/main/resources/config/sms.properties:
--------------------------------------------------------------------------------
1 | ##############sms.properties##############################
2 | sms.disabled = false
3 | sms.url = http://gw.api.taobao.com/router/rest
4 | sms.appKey = 23381733
5 | sms.appSecret = a1f307d8280946ac530bac9a66d039b6
6 | sms.signName = \u8d5b\u4e8b\u7ba1\u7406\u5e73\u53f0
7 | sms.templateCode = SMS_10315845
8 |
9 | #sms.host = app.cloopen.com
10 | #sms.port = 8883
11 | #sms.accountSid = 8a48b551511a2cec01511e6dd1ab0d34
12 | #sms.authToken = 1a879fe704014fdb9a4b48ddb4232329
13 | #sms.appId = aaf98f89524954cc0152540f6b0314e5
14 | #sms.templateId = 63084
15 | ##############sms.properties##############################
--------------------------------------------------------------------------------
/admin/src/main/resources/log4j.properties:
--------------------------------------------------------------------------------
1 | #log4j.rootLogger = [ level ] , appenderName, appenderName, ...
2 | log4j.rootLogger = info,console,R,RE
3 | #level=INFO,all can be output
4 | #console is set to be a ConsoleAppender
5 |
6 | ################### console ###################
7 | log4j.appender.console = org.apache.log4j.ConsoleAppender
8 | log4j.appender.console.layout = org.apache.log4j.PatternLayout
9 | log4j.appender.console.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p]-[%t] %m%n
10 | ################### console ###################
11 |
12 |
13 | ################### R ###################
14 | log4j.appender.R = org.apache.log4j.DailyRollingFileAppender
15 | log4j.appender.R.Threshold = INFO
16 | log4j.appender.R.File = ${catalina.base}/logs/admin_info_log.txt
17 | log4j.appender.R.DatePattern='-'yyyy-MM-dd'.txt'
18 | log4j.appender.R.MaxFileSize = 10MB
19 | log4j.appender.R.MaxBackupIndex = 10000
20 | log4j.appender.R.layout = org.apache.log4j.PatternLayout
21 | log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p]-[%t] %m%n
22 | ################### R ###################
23 |
24 |
25 | ################### RE ###################
26 | log4j.appender.RE = org.apache.log4j.DailyRollingFileAppender
27 | log4j.appender.RE.Threshold = ERROR
28 | log4j.appender.RE.File = ${catalina.base}/logs/admin_error_log.txt
29 | log4j.appender.RE.DatePattern='-'yyyy-MM-dd'.txt'
30 | log4j.appender.RE.MaxFileSize = 10MB
31 | log4j.appender.RE.MaxBackupIndex = 10000
32 | log4j.appender.RE.layout = org.apache.log4j.PatternLayout
33 | log4j.appender.RE.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p]-[%t] %m%n
34 | ################### RE ###################
35 |
36 |
37 | ################### hibernate ###################
38 | log4j.logger.org.hibernate=info
39 | ################### hibernate ###################
40 |
41 | ################### springframework ###################
42 | log4j.logger.org.springframework=error
43 | ################### springframework ###################
44 |
--------------------------------------------------------------------------------
/admin/src/main/resources/log4j.properties.real:
--------------------------------------------------------------------------------
1 | #log4j.rootLogger = [ level ] , appenderName, appenderName, ...
2 | log4j.rootLogger = error, console, R
3 | #level=INFO,all can be output
4 | #console is set to be a ConsoleAppender
5 |
6 | log4j.appender.console = org.apache.log4j.ConsoleAppender
7 | #console have four patterns
8 | #org.apache.log4j.HTMLLayout
9 | #org.apache.log4j.PatternLayout
10 | #org.apache.log4j.SimpleLayout
11 | #org.apache.log4j.TTCCLayout
12 | log4j.appender.console.layout = org.apache.log4j.PatternLayout
13 | #define the output type
14 | log4j.appender.console.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
15 |
16 |
17 | #file is set to output to a extra file
18 | log4j.appender.R = org.apache.log4j.DailyRollingFileAppender
19 | #the absolute route of the log4j file
20 | log4j.appender.R.File = ${catalina.base}/logs/log.txt
21 | log4j.appender.R.DatePattern='-'yyyy-MM-dd
22 | #the size
23 | log4j.appender.R.MaxFileSize = 10MB
24 | #back up a file
25 | log4j.appender.R.MaxBackupIndex = 100
26 | log4j.appender.R.layout = org.apache.log4j.PatternLayout
27 | log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] - %m%n
28 |
29 | log4j.appender.stdout.Threshold=trace
30 |
31 |
32 | #############hibernate###################
33 | # All hibernate log output of "info" level or higher goes to stdout.
34 | # For more verbose logging, change the "info" to "debug" on the last line.
35 | log4j.logger.org.hibernate.ps.PreparedStatementCache=error
36 | log4j.logger.org.hibernate=error
37 | log4j.category.org.hibernate.type=error
38 | # Changing the log level to DEBUG will result in Hibernate generated
39 | # SQL to be logged.
40 | log4j.logger.org.hibernate.SQL=error
41 |
42 | # Changing the log level to DEBUG will result in the PreparedStatement
43 | # bound variable values to be logged.
44 | log4j.logger.org.hibernate.type=error
45 | #############hibernate###################
46 |
47 | #############SprintFramework#############
48 | log4j.logger.org.springframework=error
49 | #############SprintFramework#############
50 |
--------------------------------------------------------------------------------
/admin/src/main/resources/spring-servlet.xml:
--------------------------------------------------------------------------------
1 |
2 |
21 |
22 |
24 |
25 | classpath:velocity.properties
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/admin/src/main/resources/toolbox.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | date
5 | request
6 |
7 | org.apache.velocity.tools.generic.DateTool
8 |
9 |
10 |
11 |
12 | link
13 | request
14 | org.apache.velocity.tools.view.tools.LinkTool
15 |
16 |
17 | stringUtils
18 | request
19 | org.apache.velocity.util.StringUtils
20 |
21 |
22 | math
23 | application
24 | org.apache.velocity.tools.generic.MathTool
25 |
26 |
27 | escape
28 | request
29 | org.apache.velocity.tools.generic.EscapeTool
30 |
31 |
32 | params
33 | request
34 | org.apache.velocity.tools.view.tools.ParameterParser
35 |
36 |
37 | json
38 | request
39 | com.zhongqi.common.velocity.tools.JsonTool
40 |
41 |
42 | upload
43 | request
44 | com.zhongqi.common.velocity.tools.UploadFileTool
45 |
46 |
47 |
--------------------------------------------------------------------------------
/admin/src/main/resources/velocity-toolbox.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | date
5 | request
6 |
7 | org.apache.velocity.tools.generic.DateTool
8 |
9 |
10 |
11 |
12 | link
13 | request
14 | org.apache.velocity.tools.view.tools.LinkTool
15 |
16 |
17 | stringUtils
18 | request
19 | org.apache.velocity.util.StringUtils
20 |
21 |
22 | math
23 | application
24 | org.apache.velocity.tools.generic.MathTool
25 |
26 |
27 | escape
28 | request
29 | org.apache.velocity.tools.generic.EscapeTool
30 |
31 |
32 | params
33 | request
34 | org.apache.velocity.tools.view.tools.ParameterParser
35 |
36 |
37 | json
38 | request
39 | com.zhongqi.common.velocity.tools.JsonTool
40 |
41 |
42 | upload
43 | request
44 | com.zhongqi.common.velocity.tools.UploadFileTool
45 |
46 |
47 |
48 | static
49 | request
50 | com.zhongqi.common.velocity.tools.StaticFileTool
51 |
52 |
53 |
--------------------------------------------------------------------------------
/admin/src/main/resources/velocity.properties:
--------------------------------------------------------------------------------
1 | velocimacro.permissions.allow.inline=true
2 | velocimacro.permissions.allow.inline.to.replace.global=true
3 | velocimacro.permissions.allow.inline.local.scope=true
4 | input.encoding=UTF-8
5 | output.encoding=UTF-8
6 | resource.loader=webapp, class
7 | class.resource.loader.description=Velocity Classpath Resource Loader
8 | class.resource.loader.class=org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
9 | webapp.resource.loader.class=org.apache.velocity.tools.view.WebappResourceLoader
10 | webapp.resource.loader.path=/views/
11 | webapp.resource.loader.cache=false
--------------------------------------------------------------------------------
/admin/src/main/webapp/WEB-INF/web.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 | alumni.admin
10 |
11 |
12 |
13 | index.jsp
14 |
15 |
16 |
17 | org.springframework.web.context.ContextLoaderListener
18 |
19 |
20 |
21 |
22 | contextConfigLocation
23 | classpath:applicationContext.xml
24 |
25 |
26 |
27 | spring
28 | org.springframework.web.servlet.DispatcherServlet
29 |
30 | contextConfigLocation
31 | classpath:spring-servlet.xml
32 |
33 | 1
34 |
35 |
36 |
37 | spring
38 | *.do
39 |
40 |
41 |
42 |
43 | 30
44 |
45 |
46 |
47 |
48 | hibernate4Filter
49 | org.springframework.orm.hibernate4.support.OpenSessionInViewFilter
50 |
51 |
52 | hibernate4Filter
53 | /*
54 |
55 |
56 |
57 |
58 |
59 | SpringCharacterEncodingFilter
60 | org.springframework.web.filter.CharacterEncodingFilter
61 |
62 | encoding
63 | UTF-8
64 |
65 |
66 |
67 | SpringCharacterEncodingFilter
68 | /*
69 |
70 |
71 |
72 |
73 |
74 |
--------------------------------------------------------------------------------
/admin/src/main/webapp/index.jsp:
--------------------------------------------------------------------------------
1 |
2 |
3 | Hello World,admin's page here .
4 |
5 |
6 |
--------------------------------------------------------------------------------
/client/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | alumni
5 | com.university
6 | 1.0-SNAPSHOT
7 |
8 | 4.0.0
9 | client
10 | war
11 | client Maven Webapp
12 | http://maven.apache.org
13 |
14 |
15 | com.university
16 | core
17 | 1.0-SNAPSHOT
18 |
19 |
20 | junit
21 | junit
22 | 3.8.1
23 | test
24 |
25 |
26 |
27 | client
28 |
29 |
30 |
--------------------------------------------------------------------------------
/client/src/main/java/com/university/alumni/client/config/HibernateConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.university.alumni.client.config;
2 |
3 | import com.mchange.v2.c3p0.ComboPooledDataSource;
4 | import org.hibernate.SessionFactory;
5 | import org.springframework.beans.factory.annotation.Autowired;
6 | import org.springframework.context.annotation.Bean;
7 | import org.springframework.context.annotation.ComponentScan;
8 | import org.springframework.context.annotation.Configuration;
9 | import org.springframework.context.annotation.PropertySource;
10 | import org.springframework.core.env.Environment;
11 | import org.springframework.jdbc.core.JdbcTemplate;
12 | import org.springframework.orm.hibernate4.HibernateTransactionManager;
13 | import org.springframework.orm.hibernate4.LocalSessionFactoryBean;
14 | import org.springframework.transaction.annotation.EnableTransactionManagement;
15 |
16 | import javax.sql.DataSource;
17 | import java.beans.PropertyVetoException;
18 | import java.sql.SQLException;
19 | import java.util.Properties;
20 |
21 | @Configuration
22 | @EnableTransactionManagement
23 | @ComponentScan({"com.university.alumni.client.config"})
24 | @PropertySource(value = "classpath:config/database.properties", ignoreResourceNotFound = false)
25 | public class HibernateConfiguration {
26 |
27 | @Autowired
28 | private Environment environment;
29 |
30 | @Bean
31 | public LocalSessionFactoryBean sessionFactory(DataSource dataSource) {
32 | LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
33 | sessionFactory.setDataSource(dataSource);
34 | sessionFactory.setPackagesToScan(new String[]{"com.university.alumni.entity"});
35 | sessionFactory.setHibernateProperties(hibernateProperties());
36 | return sessionFactory;
37 | }
38 |
39 | @Bean
40 | public JdbcTemplate jdbcTemplate(DataSource dataSource) throws PropertyVetoException, SQLException {
41 | JdbcTemplate jdbcTemplate = new JdbcTemplate();
42 | jdbcTemplate.setDataSource(dataSource);
43 | return jdbcTemplate;
44 | }
45 |
46 | @Bean
47 | public DataSource dataSource() throws PropertyVetoException, SQLException {
48 | String driver = environment.getRequiredProperty("database.connection.driver");
49 | String url = environment.getRequiredProperty("database.connection.url");
50 | String user = environment.getRequiredProperty("database.connection.user");
51 | String password = environment.getRequiredProperty("database.connection.password");
52 | return getDataSource(driver, url, user, password);
53 | }
54 | public DataSource getDataSource(String driver, String url, String user, String password) throws PropertyVetoException, SQLException {
55 | ComboPooledDataSource dataSource = new ComboPooledDataSource();
56 | dataSource.setDriverClass(driver);
57 | dataSource.setJdbcUrl(url);
58 | dataSource.setUser(user);
59 | dataSource.setPassword(password);
60 | dataSource.setMinPoolSize(5);
61 | dataSource.setMaxPoolSize(30);
62 | dataSource.setMaxIdleTime(30);
63 | dataSource.setAcquireIncrement(3);
64 | // dataSource.setMaxStatements(1000);
65 | dataSource.setInitialPoolSize(10);
66 |
67 | dataSource.setAcquireRetryAttempts(30);
68 | dataSource.setAcquireRetryDelay(1000);
69 | dataSource.setTestConnectionOnCheckout(false);
70 | dataSource.setTestConnectionOnCheckin(true);
71 | dataSource.setBreakAfterAcquireFailure(false);
72 |
73 | dataSource.setPreferredTestQuery("select id from test where id = 1");
74 | dataSource.setMaxStatements(0);
75 | dataSource.setIdleConnectionTestPeriod(60);
76 | dataSource.setCheckoutTimeout(10000);
77 | dataSource.setAutoCommitOnClose(false);
78 |
79 | return dataSource;
80 | }
81 | private Properties hibernateProperties() {
82 | Properties properties = new Properties();
83 | properties.put("hibernate.autoReconnect", environment.getProperty("database.hibernate.autoReconnect"));
84 | properties.put("hibernate.connection.release_mode", environment.getProperty("database.hibernate.connection.release_mode"));
85 | properties.put("hibernate.temp.use_jdbc_metadata_defaults", environment.getProperty("database.hibernate.temp.use_jdbc_metadata_defaults"));
86 | properties.put("hibernate.hbm2ddl.auto", environment.getProperty("database.hibernate.hbm2ddl.auto"));
87 | properties.put("hibernate.dialect", environment.getProperty("database.hibernate.dialect"));
88 | properties.put("hibernate.show_sql", environment.getProperty("database.hibernate.show_sql"));
89 | properties.put("hibernate.format_sql", environment.getProperty("database.hibernate.format_sql"));
90 | properties.put("hibernate.use_sql_comments", environment.getProperty("database.hibernate.use_sql_comments"));
91 | properties.put("hibernate.jdbc.batch_size", environment.getProperty("database.hibernate.jdbc.batch_size"));
92 | properties.put("hibernate.connection.isolation", environment.getProperty("database.hibernate.connection.isolation"));
93 | return properties;
94 | }
95 |
96 | @Bean
97 | @Autowired
98 | public HibernateTransactionManager transactionManager(SessionFactory s) {
99 | HibernateTransactionManager txManager = new HibernateTransactionManager();
100 | txManager.setSessionFactory(s);
101 | return txManager;
102 | }
103 | }
104 |
105 |
106 |
--------------------------------------------------------------------------------
/client/src/main/resources/applicationContext.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
14 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 | org.springframework.web.servlet.view.JstlView
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 | ../jsp/uploadCode
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/client/src/main/resources/config/common.properties:
--------------------------------------------------------------------------------
1 | defaultPoolSize =5
2 | host=http://dev202.admin.cc.cmsa.cn
3 | pageSize=50
4 | examHost=172.21.120.201:15200
5 |
6 | match-start-time=9
7 | match-end-time=15
8 |
9 | match-start-time.weiqi=9
10 | match-end-time.weiqi=15
--------------------------------------------------------------------------------
/client/src/main/resources/config/database.properties:
--------------------------------------------------------------------------------
1 | ####################jdbc.properties#########################################
2 | database.connection.driver = com.mysql.jdbc.Driver
3 | database.connection.user = root
4 | database.connection.password =root
5 | database.connection.url = jdbc:mysql://localhost:3306/alumni?useUnicode=true&characterEncoding=utf8
6 |
7 |
8 |
9 | database.hibernate.schema_update = none
10 | database.hibernate.max_fetch_depth=0
11 | database.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect
12 | database.hibernate.show_sql = false
13 | database.hibernate.format_sql = true
14 | database.hibernate.use_sql_comments = true
15 | database.hibernate.jdbc.batch_size = 50
16 | database.hibernate.hbm2ddl.auto = none
17 | database.hibernate.connection.isolation=2
18 | database.hibernate.connection.release_mode=after_transaction
19 | database.hibernate.autoReconnect = true
20 | database.hibernate.temp.use_jdbc_metadata_defaults = false
21 | ####################jdbc.properties#########################################
--------------------------------------------------------------------------------
/client/src/main/resources/config/email.properties:
--------------------------------------------------------------------------------
1 | ####################email.properties#########################################
2 | smtpHostName=smtp.exmail.qq.com
3 | smtpEmail=no-reply@imsa.org.cn
4 | smtpPass=imsaORG123
5 | ##############email.properties##############################
--------------------------------------------------------------------------------
/client/src/main/resources/config/menu.properties:
--------------------------------------------------------------------------------
1 | ############## menuOrder.properties ##############################
2 | menuOrder.super=
3 | menuOrder.admin=
4 | menuOrder.user=
5 | ############## menuOrder.properties ##############################
--------------------------------------------------------------------------------
/client/src/main/resources/config/redis.properties:
--------------------------------------------------------------------------------
1 | redis_ip=127.0.0.1
2 | redis_port=6379
3 | redis_passKey=imsaRedis01
4 |
--------------------------------------------------------------------------------
/client/src/main/resources/config/sms.properties:
--------------------------------------------------------------------------------
1 | ##############sms.properties##############################
2 |
3 | sms.disabled = false
4 | sms.url = http://gw.api.taobao.com/router/rest
5 | sms.appKey = 23551977
6 | sms.appSecret = b4db51d23014a72fe315b706861b2ada
7 | sms.signName = \u8d5b\u4e8b\u7ba1\u7406\u5e73\u53f0
8 | sms.templateCode = SMS_10315845
9 |
10 | # old
11 | #sms.disabled = false
12 | #sms.url = http://gw.api.taobao.com/router/rest
13 | #sms.appKey = 23381733
14 | #sms.appSecret = a1f307d8280946ac530bac9a66d039b6
15 | #sms.signName = \u8d5b\u4e8b\u7ba1\u7406\u5e73\u53f0
16 | #sms.templateCode = SMS_10315845
17 |
18 | #sms.host = app.cloopen.com
19 | #sms.port = 8883
20 | #sms.accountSid = 8a48b551511a2cec01511e6dd1ab0d34
21 | #sms.authToken = 1a879fe704014fdb9a4b48ddb4232329
22 | #sms.appId = aaf98f89524954cc0152540f6b0314e5
23 | #sms.templateId = 63084
24 | ##############sms.properties##############################
--------------------------------------------------------------------------------
/client/src/main/resources/log4j.properties:
--------------------------------------------------------------------------------
1 | #log4j.rootLogger = [ level ] , appenderName, appenderName, ...
2 | log4j.rootLogger = info,console,R,RE
3 | #level=INFO,all can be output
4 | #console is set to be a ConsoleAppender
5 |
6 | ################### console ###################
7 | log4j.appender.console = org.apache.log4j.ConsoleAppender
8 | log4j.appender.console.layout = org.apache.log4j.PatternLayout
9 | log4j.appender.console.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p]-[%t] %m%n
10 | ################### console ###################
11 |
12 |
13 | ################### R ###################
14 | log4j.appender.R = org.apache.log4j.DailyRollingFileAppender
15 | log4j.appender.R.Threshold = INFO
16 | log4j.appender.R.File = ${catalina.base}/logs/client_info_log.txt
17 | log4j.appender.R.DatePattern='-'yyyy-MM-dd'.txt'
18 | log4j.appender.R.MaxFileSize = 10MB
19 | log4j.appender.R.MaxBackupIndex = 10000
20 | log4j.appender.R.layout = org.apache.log4j.PatternLayout
21 | log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p]-[%t] %m%n
22 | ################### R ###################
23 |
24 |
25 | ################### RE ###################
26 | log4j.appender.RE = org.apache.log4j.DailyRollingFileAppender
27 | log4j.appender.RE.Threshold = ERROR
28 | log4j.appender.RE.File = ${catalina.base}/logs/client_error_log.txt
29 | log4j.appender.RE.DatePattern='-'yyyy-MM-dd'.txt'
30 | log4j.appender.RE.MaxFileSize = 10MB
31 | log4j.appender.RE.MaxBackupIndex = 10000
32 | log4j.appender.RE.layout = org.apache.log4j.PatternLayout
33 | log4j.appender.RE.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p]-[%t] %m%n
34 | ################### RE ###################
35 |
36 |
37 | ################### hibernate ###################
38 | log4j.logger.org.hibernate=info
39 | ################### hibernate ###################
40 |
41 | ################### springframework ###################
42 | log4j.logger.org.springframework=error
43 | ################### springframework ###################
44 |
--------------------------------------------------------------------------------
/client/src/main/resources/log4j.properties.real:
--------------------------------------------------------------------------------
1 | #log4j.rootLogger = [ level ] , appenderName, appenderName, ...
2 | log4j.rootLogger = error, console, R
3 | #level=INFO,all can be output
4 | #console is set to be a ConsoleAppender
5 |
6 | log4j.appender.console = org.apache.log4j.ConsoleAppender
7 | #console have four patterns
8 | #org.apache.log4j.HTMLLayout
9 | #org.apache.log4j.PatternLayout
10 | #org.apache.log4j.SimpleLayout
11 | #org.apache.log4j.TTCCLayout
12 | log4j.appender.console.layout = org.apache.log4j.PatternLayout
13 | #define the output type
14 | log4j.appender.console.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
15 |
16 |
17 | #file is set to output to a extra file
18 | log4j.appender.R = org.apache.log4j.DailyRollingFileAppender
19 | #the absolute route of the log4j file
20 | log4j.appender.R.File = ${catalina.base}/logs/log.txt
21 | log4j.appender.R.DatePattern='-'yyyy-MM-dd
22 | #the size
23 | log4j.appender.R.MaxFileSize = 10MB
24 | #back up a file
25 | log4j.appender.R.MaxBackupIndex = 100
26 | log4j.appender.R.layout = org.apache.log4j.PatternLayout
27 | log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] - %m%n
28 |
29 | log4j.appender.stdout.Threshold=trace
30 |
31 |
32 | #############hibernate###################
33 | # All hibernate log output of "info" level or higher goes to stdout.
34 | # For more verbose logging, change the "info" to "debug" on the last line.
35 | log4j.logger.org.hibernate.ps.PreparedStatementCache=error
36 | log4j.logger.org.hibernate=error
37 | log4j.category.org.hibernate.type=error
38 | # Changing the log level to DEBUG will result in Hibernate generated
39 | # SQL to be logged.
40 | log4j.logger.org.hibernate.SQL=error
41 |
42 | # Changing the log level to DEBUG will result in the PreparedStatement
43 | # bound variable values to be logged.
44 | log4j.logger.org.hibernate.type=error
45 | #############hibernate###################
46 |
47 | #############SprintFramework#############
48 | log4j.logger.org.springframework=error
49 | #############SprintFramework#############
50 |
--------------------------------------------------------------------------------
/client/src/main/resources/spring-servlet.xml:
--------------------------------------------------------------------------------
1 |
2 |
21 |
22 |
24 |
25 | classpath:velocity.properties
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/client/src/main/resources/toolbox.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | date
5 | request
6 |
7 | org.apache.velocity.tools.generic.DateTool
8 |
9 |
10 |
11 |
12 | link
13 | request
14 | org.apache.velocity.tools.view.tools.LinkTool
15 |
16 |
17 | stringUtils
18 | request
19 | org.apache.velocity.util.StringUtils
20 |
21 |
22 | math
23 | application
24 | org.apache.velocity.tools.generic.MathTool
25 |
26 |
27 | escape
28 | request
29 | org.apache.velocity.tools.generic.EscapeTool
30 |
31 |
32 | params
33 | request
34 | org.apache.velocity.tools.view.tools.ParameterParser
35 |
36 |
37 | json
38 | request
39 | com.zhongqi.common.velocity.tools.JsonTool
40 |
41 |
42 | upload
43 | request
44 | com.zhongqi.common.velocity.tools.UploadFileTool
45 |
46 |
47 |
--------------------------------------------------------------------------------
/client/src/main/resources/velocity-toolbox.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | date
5 | request
6 |
7 | org.apache.velocity.tools.generic.DateTool
8 |
9 |
10 |
11 |
12 | link
13 | request
14 | org.apache.velocity.tools.view.tools.LinkTool
15 |
16 |
17 | stringUtils
18 | request
19 | org.apache.velocity.util.StringUtils
20 |
21 |
22 | math
23 | application
24 | org.apache.velocity.tools.generic.MathTool
25 |
26 |
27 | escape
28 | request
29 | org.apache.velocity.tools.generic.EscapeTool
30 |
31 |
32 | params
33 | request
34 | org.apache.velocity.tools.view.tools.ParameterParser
35 |
36 |
37 | json
38 | request
39 | com.zhongqi.common.velocity.tools.JsonTool
40 |
41 |
42 | upload
43 | request
44 | com.zhongqi.common.velocity.tools.UploadFileTool
45 |
46 |
47 |
48 | static
49 | request
50 | com.zhongqi.common.velocity.tools.StaticFileTool
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
--------------------------------------------------------------------------------
/client/src/main/resources/velocity.properties:
--------------------------------------------------------------------------------
1 | velocimacro.permissions.allow.inline=true
2 | velocimacro.permissions.allow.inline.to.replace.global=true
3 | velocimacro.permissions.allow.inline.local.scope=true
4 | input.encoding=UTF-8
5 | output.encoding=UTF-8
6 | resource.loader=webapp, class
7 | class.resource.loader.description=Velocity Classpath Resource Loader
8 | class.resource.loader.class=org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
9 | webapp.resource.loader.class=org.apache.velocity.tools.view.WebappResourceLoader
10 | webapp.resource.loader.path=/views/
11 | webapp.resource.loader.cache=false
--------------------------------------------------------------------------------
/client/src/main/webapp/WEB-INF/web.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 | Archetype Created Web Application
7 |
8 |
--------------------------------------------------------------------------------
/client/src/main/webapp/index.jsp:
--------------------------------------------------------------------------------
1 |
2 |
3 | Hello World,client's page here.
4 |
5 |
6 |
--------------------------------------------------------------------------------
/core/libs/jcaptcha-all-1.0-RC6.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/1111111ww/alumni/aeee8528f274bd3844d6566e4ff95818bc64bb2c/core/libs/jcaptcha-all-1.0-RC6.jar
--------------------------------------------------------------------------------
/core/libs/patchca-0.5.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/1111111ww/alumni/aeee8528f274bd3844d6566e4ff95818bc64bb2c/core/libs/patchca-0.5.0.jar
--------------------------------------------------------------------------------
/core/libs/taobao-sdk-java-auto_1455552377940-20160505.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/1111111ww/alumni/aeee8528f274bd3844d6566e4ff95818bc64bb2c/core/libs/taobao-sdk-java-auto_1455552377940-20160505.jar
--------------------------------------------------------------------------------
/core/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 | alumni
7 | com.university
8 | 1.0-SNAPSHOT
9 |
10 | 4.0.0
11 |
12 | core
13 |
14 |
15 |
16 |
17 |
18 | com.h2database
19 | h2
20 | 1.4.190
21 |
22 |
23 |
24 | org.hibernate
25 | hibernate-core
26 |
27 | ${hibernate.version}
28 |
29 |
30 |
31 | org.hibernate
32 | hibernate-entitymanager
33 | ${hibernate.version}
34 |
35 |
36 | org.hibernate
37 | hibernate-c3p0
38 | ${hibernate.version}
39 |
40 |
41 |
42 | junit
43 | junit
44 | 3.8.1
45 | test
46 |
47 |
48 | org.springframework
49 | spring-web
50 | ${springframework.version}
51 |
52 |
53 | org.springframework
54 | spring-test
55 | ${springframework.version}
56 | test
57 |
58 |
59 | org.springframework
60 | spring-webmvc
61 | ${springframework.version}
62 |
63 |
64 | org.springframework
65 | spring-tx
66 | ${springframework.version}
67 |
68 |
69 | org.springframework
70 | spring-context-support
71 | ${springframework.version}
72 |
73 |
74 | org.springframework.data
75 | spring-data-jpa
76 | 1.9.0.RELEASE
77 |
78 |
79 |
80 | org.apache.commons
81 | commons-dbcp2
82 | 2.1.1
83 |
84 |
85 |
86 | org.eclipse.persistence
87 | javax.persistence
88 | 2.1.0
89 |
90 |
91 |
92 | mysql
93 | mysql-connector-java
94 | 5.1.30
95 |
96 |
97 |
98 |
99 |
100 | com.fasterxml.jackson.core
101 | jackson-databind
102 | ${jackson.version}
103 |
104 |
105 | net.sf.json-lib
106 | json-lib
107 | 2.4
108 | jdk15
109 |
110 |
111 | commons-httpclient
112 | commons-httpclient
113 | 3.1
114 |
115 |
116 |
117 | commons-beanutils
118 | commons-beanutils
119 | 1.8.0
120 |
121 |
122 | commons-codec
123 | commons-codec
124 | 1.9
125 |
126 |
127 |
128 | commons-lang
129 | commons-lang
130 | 2.2
131 |
132 |
133 |
134 | commons-logging
135 | commons-logging
136 | 1.1.1
137 |
138 |
139 | net.sf.ezmorph
140 | ezmorph
141 | 1.0.4
142 |
143 |
144 |
145 | org.apache.httpcomponents
146 | httpcore
147 | 4.3.3
148 |
149 |
150 | org.apache.httpcomponents
151 | httpclient
152 | 4.3.6
153 |
154 |
155 |
156 | org.apache.poi
157 | poi-ooxml
158 | 3.10-FINAL
159 |
160 |
161 | org.apache.poi
162 | poi
163 | 3.10-FINAL
164 |
165 |
166 | org.apache.commons
167 | commons-lang3
168 | 3.4
169 |
170 |
171 | commons-net
172 | commons-net
173 | 2.0
174 |
175 |
176 | commons-io
177 | commons-io
178 | 2.4
179 |
180 |
181 |
182 |
183 | org.apache.commons
184 | commons-email
185 | 1.3.2
186 |
187 |
188 | com.google.code.gson
189 | gson
190 | 2.2.4
191 |
192 |
193 |
194 | org.slf4j
195 | slf4j-api
196 | 1.7.12
197 |
198 |
199 | org.slf4j
200 | jcl-over-slf4j
201 | 1.7.12
202 | runtime
203 |
204 |
205 | org.slf4j
206 | slf4j-log4j12
207 | 1.7.12
208 | runtime
209 |
210 |
211 | log4j
212 | log4j
213 | 1.2.17
214 |
215 |
216 | jstl
217 | jstl
218 | 1.2
219 |
220 |
221 |
222 | org.quartz-scheduler
223 | quartz
224 | 2.2.1
225 |
226 |
227 | javax.mail
228 | mail
229 | 1.4
230 |
231 |
232 |
233 | javax.servlet
234 | jsp-api
235 | 2.0
236 |
237 |
238 |
239 | javax.servlet
240 | javax.servlet-api
241 | 3.1.0
242 |
243 |
244 | org.codehaus.jettison
245 | jettison
246 | 1.0-RC2
247 |
248 |
249 | aspectj
250 | aspectjlib
251 | 1.5.3
252 |
253 |
254 | org.aspectj
255 | aspectjweaver
256 | 1.8.9
257 |
258 |
259 | commons-collections
260 | commons-collections
261 | 3.2.2
262 |
263 |
264 |
265 | commons-fileupload
266 | commons-fileupload
267 | 1.3.1
268 |
269 |
270 | org.springframework.amqp
271 | spring-rabbit
272 | 1.5.3.RELEASE
273 |
274 |
275 | com.octo.captcha
276 | jcaptcha
277 | 1.0
278 | system
279 | ${libs.path}/libs/jcaptcha-all-1.0-RC6.jar
280 |
281 |
282 | com.taobao.api
283 | taobao-sdk-java-auto
284 | 1.0
285 | system
286 | ${libs.path}/libs/taobao-sdk-java-auto_1455552377940-20160505.jar
287 |
288 |
289 |
290 | patchca
291 | patchca
292 | 1.0
293 | system
294 | ${libs.path}/libs/patchca-0.5.0.jar
295 |
296 |
297 |
298 | javax.validation
299 | validation-api
300 | 1.1.0.Final
301 |
302 |
303 | org.hibernate
304 | hibernate-validator
305 | 5.0.1.Final
306 |
307 |
308 | joda-time
309 | joda-time
310 | 2.9.4
311 |
312 |
313 | org.apache.velocity
314 | velocity
315 | 1.7
316 |
317 |
318 | org.apache.velocity
319 | velocity-tools
320 | 2.0
321 |
322 |
323 | org.owasp.esapi
324 | esapi
325 | 2.1.0.1
326 |
327 |
328 | org.codehaus.jackson
329 | jackson-mapper-asl
330 | 1.9.7
331 |
332 |
333 | org.codehaus.jackson
334 | jackson-core-asl
335 | 1.9.7
336 |
337 |
338 |
339 | org.jsoup
340 | jsoup
341 | 1.9.1
342 |
343 |
344 |
345 | redis.clients
346 | jedis
347 | 2.7.3
348 |
349 |
350 |
351 | com.dyuproject.protostuff
352 | protostuff-core
353 | 1.0.8
354 |
355 |
356 |
357 | com.dyuproject.protostuff
358 | protostuff-runtime
359 | 1.0.8
360 |
361 |
362 |
363 |
364 |
365 | UTF-8
366 |
367 |
368 |
--------------------------------------------------------------------------------
/core/src/main/java/com/university/alumni/application/UserService.java:
--------------------------------------------------------------------------------
1 | package com.university.alumni.application;
2 |
3 | import com.university.alumni.entity.User;
4 |
5 | /**
6 | * Created by wm on 2017/1/19.
7 | */
8 | public interface UserService {
9 | public User addUser(String name,String age);
10 | }
11 |
--------------------------------------------------------------------------------
/core/src/main/java/com/university/alumni/application/impl/UserServiceImpl.java:
--------------------------------------------------------------------------------
1 | package com.university.alumni.application.impl;
2 |
3 | import com.university.alumni.application.UserService;
4 | import com.university.alumni.dao.UserDao;
5 | import com.university.alumni.entity.User;
6 | import org.springframework.beans.factory.annotation.Autowired;
7 | import org.springframework.stereotype.Service;
8 | import org.springframework.transaction.annotation.Transactional;
9 |
10 | /**
11 | * Created by wm on 2017/1/19.
12 | */
13 | @Service
14 | public class UserServiceImpl implements UserService{
15 | @Autowired
16 | private UserDao userDao;
17 |
18 |
19 | @Override
20 | @Transactional
21 | public User addUser(String name, String age) {
22 | return userDao.addUser(name, age);
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/core/src/main/java/com/university/alumni/dao/UserDao.java:
--------------------------------------------------------------------------------
1 | package com.university.alumni.dao;
2 |
3 | import com.university.alumni.entity.User;
4 |
5 | /**
6 | * Created by wm on 2017/1/19.
7 | */
8 | public interface UserDao {
9 | public User addUser(String name,String age);
10 | }
11 |
--------------------------------------------------------------------------------
/core/src/main/java/com/university/alumni/dao/impl/UserDaoImpl.java:
--------------------------------------------------------------------------------
1 | package com.university.alumni.dao.impl;
2 |
3 | import com.university.alumni.dao.UserDao;
4 | import com.university.alumni.entity.User;
5 | import com.university.common.dao.impl.BaseDaoImpl;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * Created by wm on 2017/1/19.
10 | */
11 | @Repository
12 | public class UserDaoImpl extends BaseDaoImpl implements UserDao {
13 |
14 | @Override
15 | public User addUser(String name, String age) {
16 | User user=new User();
17 | user.setName("娜娜");
18 | user.setAge("19");
19 | save(user);
20 | return user;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/core/src/main/java/com/university/alumni/entity/User.java:
--------------------------------------------------------------------------------
1 | package com.university.alumni.entity;
2 |
3 | import javax.persistence.*;
4 |
5 | /**
6 | * Created by wm on 2017/1/18.
7 | */
8 | @Entity
9 | @Table(name="User")
10 | public class User {
11 | private Integer id;
12 | private String name;
13 | private String age;
14 |
15 | @Id
16 | @GeneratedValue(strategy = GenerationType.IDENTITY)
17 | @Column(name="id",unique = true,nullable = false)
18 | public Integer getId() {
19 | return id;
20 | }
21 |
22 | public void setId(Integer id) {
23 | this.id = id;
24 | }
25 |
26 | @Column(name = "name",nullable = true)
27 | public String getName() {
28 | return name;
29 | }
30 |
31 | public void setName(String name) {
32 | this.name = name;
33 | }
34 |
35 | @Column(name = "age",nullable = true)
36 | public String getAge() {
37 | return age;
38 | }
39 |
40 | public void setAge(String age) {
41 | this.age = age;
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/core/src/main/java/com/university/common/config/ConfigService.java:
--------------------------------------------------------------------------------
1 | package com.university.common.config;
2 |
3 | import org.springframework.beans.factory.annotation.Autowired;
4 | import org.springframework.context.annotation.PropertySource;
5 | import org.springframework.core.env.Environment;
6 | import org.springframework.stereotype.Component;
7 |
8 | /**
9 | * Created by leo on 16/4/16.
10 | */
11 | @Component("configService")
12 | @PropertySource(value = "classpath:config/common.properties", ignoreResourceNotFound = true)
13 | @PropertySource(value = "classpath:config/database.properties", ignoreResourceNotFound = true)
14 | @PropertySource(value = "classpath:config/email.properties", ignoreResourceNotFound = true)
15 | @PropertySource(value = "classpath:config/sms.properties", ignoreResourceNotFound = true)
16 | @PropertySource(value = "classpath:config/menu.properties", ignoreResourceNotFound = true)
17 | public class ConfigService {
18 |
19 | @Autowired
20 | private Environment env;
21 |
22 | public String getPropertyValue(String key) {
23 | return env.getProperty(key);
24 | }
25 |
26 |
27 | //******************** email config start ********************
28 |
29 | public String getSmtpEmail() {
30 | return env.getProperty("smtpEmail");
31 | }
32 |
33 | public String getSmtpHostName() {
34 | return env.getProperty("smtpHostName");
35 | }
36 |
37 | public String getSmtpPass() {
38 | return env.getProperty("smtpPass");
39 | }
40 |
41 | //******************** email config start ********************
42 |
43 |
44 | //******************** host config start ********************
45 |
46 | public String getHost() {
47 | return env.getProperty("host");
48 | }
49 |
50 | //******************** host config end ********************
51 |
52 |
53 | //******************** sms config start ********************
54 |
55 | public String getSMSDisabled() {
56 | return env.getProperty("sms.disabled");
57 | }
58 |
59 | public String getSMSUrl() {
60 | return env.getProperty("sms.url");
61 | }
62 |
63 | public String getSMSAppKey() {
64 | return env.getProperty("sms.appKey");
65 | }
66 |
67 | public String getSMSAppSecret() {
68 | return env.getProperty("sms.appSecret");
69 | }
70 |
71 | public String getSMSSignName() {
72 | return env.getProperty("sms.signName");
73 | }
74 |
75 | public String getSMSTemplateCode() {
76 | return env.getProperty("sms.templateCode");
77 | }
78 |
79 | //******************** sms config end ********************
80 |
81 |
82 | //******************** page config start ********************
83 |
84 | public String getPageSize() {
85 | return env.getProperty("pageSize");
86 | }
87 |
88 | //******************** page config end ********************
89 |
90 |
91 | //******************** examHost config start ********************
92 |
93 | public String getExamHost() {
94 | return env.getProperty("examHost");
95 | }
96 |
97 | //******************** examHost config end ********************
98 |
99 |
100 | //******************** adminHost config start ********************
101 |
102 | public String getAdminHost() {
103 | return env.getProperty("adminHost");
104 | }
105 |
106 | //******************** adminHost config end ********************
107 |
108 |
109 | //******************** match start end time ********************
110 |
111 | public String getMatchStartTime(){
112 | return env.getProperty("match-start-time");
113 | }
114 |
115 | public String getMatchEndTime(){
116 | return env.getProperty("match-end-time");
117 | }
118 |
119 | public String getMatchStartTime_weiqi(){
120 | return env.getProperty("match-start-time.weiqi");
121 | }
122 |
123 | public String getMatchEndTime_weiqi(){
124 | return env.getProperty("match-end-time.weiqi");
125 | }
126 |
127 | //******************** match start end time ********************
128 |
129 |
130 | public String getMenuOrderStr(Integer roleType){
131 | String orderStr = "";
132 |
133 | switch (roleType){
134 | case 1 :
135 | orderStr = env.getProperty("menuOrder.super");
136 | break;
137 | case 2 :
138 | orderStr = env.getProperty("menuOrder.admin");
139 | break;
140 | case 3 :
141 | orderStr = env.getProperty("menuOrder.user");
142 | break;
143 | }
144 |
145 | return orderStr;
146 | }
147 | }
148 |
--------------------------------------------------------------------------------
/core/src/main/java/com/university/common/dao/BaseDao.java:
--------------------------------------------------------------------------------
1 | package com.university.common.dao;
2 |
3 |
4 | import org.springframework.jdbc.core.JdbcTemplate;
5 |
6 | import java.io.Serializable;
7 | import java.util.List;
8 |
9 | /**
10 | * 基础数据库操作类
11 | *
12 | * @author ss
13 | */
14 | public interface BaseDao {
15 |
16 | /**
17 | * 保存一个对象
18 | *
19 | * @param o
20 | * @return
21 | */
22 | public Serializable save(T o);
23 |
24 | /**
25 | * 删除一个对象
26 | *
27 | * @param o
28 | */
29 | public void delete(T o);
30 |
31 | /**
32 | * 更新一个对象
33 | *
34 | * @param o
35 | */
36 | public void update(T o);
37 |
38 | /**
39 | * 保存或更新对象
40 | *
41 | * @param o
42 | */
43 | public void saveOrUpdate(T o);
44 |
45 | /**
46 | * 查询
47 | *
48 | * @param hql
49 | * @return
50 | */
51 | public List find(String hql);
52 |
53 | /**
54 | * 查询集合
55 | *
56 | * @param hql
57 | * @param param
58 | * @return
59 | */
60 | public List find(String hql, Object[] param);
61 |
62 | /**
63 | * 查询集合
64 | *
65 | * @param hql
66 | * @param param
67 | * @return
68 | */
69 | public List find(String hql, List