1、分模块构建项目,每个模块职责清晰,功能明确;
2、后台管理系统、前台展示系统、静态文件系统分开管理,降低系统的压力,提高系统的可靠性,轻松实现分布式部署;
3、项目主要实现了实验室设备的前台展示,后台管理,基本满足了实验室设备管理的需求;
4、整个项目给予SSM构建,是学习Java Web开发,SSM框架的良好范本。
git clone git@github.com:iCodingStar/Laboratory-devices-management-system
git remote add remote [你fork的地址,比如:git@github.com:iCodingStar/Laboratory-devices-management-system]
git pull origin master
git push remote master
请务必遵守规范进行编码,否则你提交的Pull Request将会被拒绝。
Java类名、局域变量、类变量名、方法名:必须采用标准驼峰命名,类名首字母大写,其余首字母小写,禁止简写。示例:Connection【类名】,connection【变量名】,getConnection【方法名】
包名:由小写字母和点组成,禁止简写。示例:cn.cug.laboratory.controller
常量名:大写字母与下划线组成,禁止简写。示例:CONNECTION_TIMEOUT,DEFAULT_SIZE
数据库表名,字段名:小写字母加下划线组成。最多长度30个字母,允许适当使用简写。示例:user_ldms,comment_time
除java文件以外的任何文件,包括xml,jsp,properties等:由小写字母和横线组成。示例:user-profile.jsp,article-edit.jsp,application-context.xml,web-config.properties
1、必须将Apache开源协议内容加入到文件首部。
2、必须写上@author和@since注释。
/*
* Copyright 2002-2016 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package cn.codingstar.controller;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
/**
* 该类代表一个bean对象.
*
* @author ShiXing
* @since 1.0.0
*/
@Getter
@Setter
public class Bean {
private String name;
private Date data;
}
1、必须将Apache开源协议内容加入到文件首部。
2、必须写上User和Time注释。
<%--
Copyright 2002-2016 the original author or authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--%>
<%--
User: ShiXing
Time: 16/5/8 18:22
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
<title>LDMS</title>
<!-- Bootstrap -->
<link href="${cacheUrl}/bootstrap/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<h1>你好,世界!</h1>
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="${cacheUrl}/jquery/jquery.min.js"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="${cacheUrl}/bootstrap/js/bootstrap.min.js"></script>
</body>
</html>
类必须有注释
方法必须有注释
如果该类是一个数据库model,则每个字段必须有注释
/*
* Copyright 2002-2016 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package cn.codingstar.controller;
/**
* 该类封装了关于string操作的工具方法
*
* @author ShiXing
* @since 1.0.0
*/
public interface StringUtils {
/**
* 判断一个字符串是否为空
*
* @param s 需要检查的字符串对象
* @return 如果s为null或空字符串返回true,否则返回false.
*/
static boolean isEmpty(String s) {
return s == null || s.trim().length() == 0;
}
}
- 请严格按照以上代码规范检查自己提交的代码
- 避免提交不该提交的代码,例如构建生成的文件。
- 类当中切勿带有main函数,如果需要测试,放到test下使用junit进行测试
- 一定类型的类放在一定的包下,具体的规则如下
数据库model:放在ldms-model下的cn.cug.laboratory.model.persistent包内
传给前端的值对象:放在ldms-model下的cn.cug.laboratory.model.dto包内
数据库的DAO类:放在ldms-dao下的cn.cug.laboratory.mapper包内
业务逻辑service:接口放在ldms-service下的cn.cug.laboratory.service包内,实现类放在cn.cug.laboratory.service.impl包内
工具类:放在ldms-common下的cn.cug.laboratory.common.utils包内
web框架通用的类:放在ldms-common的cn.cug.laboratory.common.web包内
ldms-{module}下的controller:放在ldms-{module}下的cn.cug.laboratory.{module}.controller包内,其中module为admin、api、cache、web其中一个