Compare commits

...

126 Commits

Author SHA1 Message Date
p6jzelshw fd9f67070b Delete 'src/test/java/com/dao/UserTest.java'
2 years ago
p6jzelshw da873d6dc8 Update npm.js
2 years ago
p6jzelshw 5ae19810b7 Update bootstrap.min.js
2 years ago
p6jzelshw 74bc6c9ca9 Update bootstrap.js
2 years ago
p6jzelshw a317b79e9b ADD file via upload
2 years ago
p6jzelshw 8935100939 Delete 'src/main/webapp/bootstrap/js/bootstrap.jsp'
2 years ago
p6jzelshw c0ed856d2b ADD file via upload
2 years ago
p6jzelshw 8669b92466 ADD file via upload
2 years ago
p6jzelshw e1de00389b Update EmpServiceImpl.java
2 years ago
pnxqwic3z d7c43d2d12 ADD file via upload
2 years ago
pnxqwic3z e35562265d ADD file via upload
2 years ago
pnxqwic3z 015b5285b5 Delete 'src/main/webapp/bootstrap/css/bootstrap.css'
2 years ago
pnxqwic3z 4b56096597 ADD file via upload
2 years ago
pnxqwic3z 1e301d6120 ADD file via upload
2 years ago
pfk4vawr6 fbc53c5ad9 ADD file via upload
2 years ago
pfk4vawr6 c798323edf Add jquery.validate.js
2 years ago
pfk4vawr6 5e5a219142 Update DepartmentController.java
2 years ago
p6jzelshw 30d0059644 ADD file via upload
2 years ago
p6jzelshw 870f5b6a97 Update log4j.properties
2 years ago
p6jzelshw 9b8a96f3fb Update jdbc.properties
2 years ago
p6jzelshw 604e689f9e ADD file via upload
2 years ago
p6jzelshw 80845ef914 ADD file via upload
2 years ago
p6jzelshw bfe049d9bc ADD file via upload
2 years ago
p6jzelshw 5f48f74b1f Delete 'pom.xml'
2 years ago
p6jzelshw e068ac10b6 ADD file via upload
2 years ago
p6jzelshw 882b2076fd Delete '.idea/workspace.xml'
2 years ago
p6jzelshw c9aec8fde0 Update Visitor.java
2 years ago
p6jzelshw a3d0446867 Update TestEntity.java
2 years ago
p6jzelshw 7617bec2ba Update Employee.java
2 years ago
p6jzelshw 527881174a Update Department.java
2 years ago
p6jzelshw 8e2fd9fc01 Update jdbc.properties
2 years ago
p6jzelshw 98f30a53c6 Update visitor.jsp
2 years ago
p6jzelshw a6ce234325 Update userMsg.jsp
2 years ago
p6jzelshw 177ba01bcc Update updateEmployee.jsp
2 years ago
p6jzelshw 861e06d201 Update updateDepartment.jsp
2 years ago
p6jzelshw 451d4d6859 Update topbar.jsp
2 years ago
p6jzelshw 3ad04f1dc2 Update test.jsp
2 years ago
p6jzelshw ddf9d52338 Update modifyPwd.jsp
2 years ago
p6jzelshw 2d1268cb65 Update main.jsp
2 years ago
p6jzelshw 7545c2e729 Update leftMenu.jsp
2 years ago
py2tc4x5b ad22bfdb45 Update log4j.properties
2 years ago
p6jzelshw 194b14ff77 Update footer.jsp
2 years ago
p6jzelshw 5d68e38f74 Update employee.jsp
2 years ago
p6jzelshw 6d413bf11f Update department.jsp
2 years ago
py2tc4x5b 150b644554 Update jdbc.properties
2 years ago
p6jzelshw 7cef6db603 ADD file via upload
2 years ago
p6jzelshw a21a6140ea ADD file via upload
2 years ago
p6jzelshw dd2c86cc4c ADD file via upload
2 years ago
p6jzelshw ca5b156999 ADD file via upload
2 years ago
p6jzelshw a8ce5be345 ADD file via upload
2 years ago
p6jzelshw f18246a5c3 ADD file via upload
2 years ago
p6jzelshw 6073367e56 ADD file via upload
2 years ago
p6jzelshw 82d93fb71f ADD file via upload
2 years ago
p6jzelshw c13338ef8f ADD file via upload
2 years ago
p6jzelshw 46146af99d ADD file via upload
2 years ago
p6jzelshw d7f3472a5b ADD file via upload
2 years ago
p6jzelshw deeb1878ad ADD file via upload
2 years ago
pfk4vawr6 e1eb1819bc Update IVisitorService.java
2 years ago
p6jzelshw 61444d4467 Update addEmployee.jsp
2 years ago
pfk4vawr6 2af4a1dfc7 Update IUserService.java
2 years ago
p6jzelshw 09ac5fe1a4 ADD file via upload
2 years ago
pfk4vawr6 7f7bf15a5d Update IEmpService.java
2 years ago
py2tc4x5b 447484d200 Update loginController.java
2 years ago
pfk4vawr6 6fd0b648e3 Update IDeptService.java
2 years ago
pfk4vawr6 84c81ac62e Update DeptServiceImpl.java
2 years ago
py2tc4x5b 4f857a5b1b Update VistorController.java
2 years ago
pfk4vawr6 e006aeeb5e Update MD5Utils.java
2 years ago
py2tc4x5b ed59542143 Update TestController.java
2 years ago
py2tc4x5b 18bf840718 Update EmployeeController.java
2 years ago
p6jzelshw ebda3b01b5 Delete 'src/main/webapp/WEB-INF/pages/visitor.jsp'
2 years ago
p6jzelshw 42046798d4 Delete 'src/main/webapp/WEB-INF/pages/userMsg.jsp'
2 years ago
p6jzelshw b217d89930 Delete 'src/main/webapp/WEB-INF/pages/updateEmployee.jsp'
2 years ago
py2tc4x5b d9d97a8c06 Update DepartmentController.java
2 years ago
p6jzelshw 47d62f54b2 Delete 'src/main/webapp/WEB-INF/pages/updateDepartment.jsp'
2 years ago
p6jzelshw 1ef40c9173 Delete 'src/main/webapp/WEB-INF/pages/topbar.jsp'
2 years ago
p6jzelshw e90be3da0c Delete 'src/main/webapp/WEB-INF/pages/test.jsp'
2 years ago
p6jzelshw 6bf745eebe Delete 'src/main/webapp/WEB-INF/pages/modifyPwd.jsp'
2 years ago
p6jzelshw 1e16b33d9e Delete 'src/main/webapp/WEB-INF/pages/main.jsp'
2 years ago
p6jzelshw f71557d9bf Delete 'src/main/webapp/WEB-INF/pages/leftMenu.jsp'
2 years ago
p6jzelshw bda6121e7d Delete 'src/main/webapp/WEB-INF/pages/footer.jsp'
2 years ago
p6jzelshw d26f709491 Delete 'src/main/webapp/WEB-INF/pages/employee.jsp'
2 years ago
pfk4vawr6 d84d9c9edf Update main.jsp
2 years ago
p6jzelshw f19223d3a7 Delete 'src/main/webapp/WEB-INF/pages/department.jsp'
2 years ago
p6jzelshw 8094b9cad0 Delete 'src/main/webapp/WEB-INF/pages/addEmployee.jsp'
2 years ago
py2tc4x5b 4475105c33 ADD file via upload
2 years ago
py2tc4x5b 4601bafb9b Delete 'src/main/webapp/WEB-INF/web.xml'
2 years ago
p6jzelshw 6871ad975e Update about.jsp
2 years ago
p6jzelshw b0b7d2e655 ADD file via upload
2 years ago
p6jzelshw 3320d75889 ADD file via upload
2 years ago
p6jzelshw aa231b53b5 ADD file via upload
2 years ago
p6jzelshw 7c848af228 ADD file via upload
2 years ago
p6jzelshw 98b5533dd2 ADD file via upload
2 years ago
p6jzelshw b422f5a086 ADD file via upload
2 years ago
p6jzelshw 25cc78eac7 ADD file via upload
2 years ago
p6jzelshw 7c39f1b32f ADD file via upload
2 years ago
p6jzelshw 1ad40817da ADD file via upload
2 years ago
p6jzelshw 54d61cd198 ADD file via upload
2 years ago
p6jzelshw 69839a0114 ADD file via upload
2 years ago
p6jzelshw bad7757813 ADD file via upload
2 years ago
p6jzelshw 36864500fc Delete 'src/main/webapp/WEB-INF/department.jsp'
2 years ago
p6jzelshw 1b824080bd ADD file via upload
2 years ago
p6jzelshw 7df4f88288 ADD file via upload
2 years ago
p6jzelshw 5a9ac5d615 Merge pull request 'resourse' (#13) from py2tc4x5b/ssm:master into master
2 years ago
py2tc4x5b bedf7731f3 ADD file via upload
2 years ago
py2tc4x5b 463a696d2e ADD file via upload
2 years ago
py2tc4x5b 603078a78d Delete 'src/main/resources/mapper/userMapper.xml'
2 years ago
py2tc4x5b ada60fcbe6 ADD file via upload
2 years ago
py2tc4x5b b4dd022647 ADD file via upload
2 years ago
py2tc4x5b f673a7ed08 ADD file via upload
2 years ago
pfk4vawr6 61902b39c9 Update IVisitorDao.java
2 years ago
pfk4vawr6 a312687b54 ADD file via upload
2 years ago
pfk4vawr6 8a7bd97c3b Update IEmployeeDao.java
2 years ago
pfk4vawr6 9b3ebe39ca ADD file via upload
2 years ago
pfk4vawr6 64dfb84bcc Delete 'src/main/java/com/dao/IEmployeeDao'
2 years ago
pfk4vawr6 d07a34b4cf Update ITestDao.java
2 years ago
pfk4vawr6 3d18980b5a ADD file via upload
2 years ago
pfk4vawr6 8900f3c8ef Add IEmployeeDao
2 years ago
pfk4vawr6 701649899e Update IDepartmentDao.java
2 years ago
p6jzelshw 1e619d992f Merge pull request 'HE' (#11) from pnxqwic3z/ssm:master into master
2 years ago
pfk4vawr6 0e3fc7e10e Delete 'src/main/java/com/dao/ITestDao'
2 years ago
pfk4vawr6 2eb228d6a1 Delete 'src/main/java/com/dao/IEmployeeDao'
2 years ago
pfk4vawr6 f450deda9a Delete 'src/main/java/com/dao/IVisitorDao'
2 years ago
pfk4vawr6 d73b053dd2 Add IVisitorDao
2 years ago
pnxqwic3z 35e00244f4 ADD file via upload
2 years ago
pfk4vawr6 af9bb9688c Add ITestDao
2 years ago
pfk4vawr6 ef0358356c Add IEmployeeDao
2 years ago

@ -2,7 +2,7 @@
<project version="4">
<component name="ArtifactsWorkspaceSettings">
<artifacts-to-build>
<artifact name="SSM_EMP:war" />
<artifact name="SSM_EMP-main:war exploded" />
</artifacts-to-build>
</component>
<component name="AutoImportSettings">
@ -50,19 +50,17 @@
</component>
<component name="PropertiesComponent"><![CDATA[{
"keyToString": {
"RunOnceActivity.OpenProjectViewOnStart": "true",
"RunOnceActivity.ShowReadmeOnStart": "true",
"WebServerToolWindowFactoryState": "false",
"last_opened_file_path": "C:/Users/耿春莹/Desktop/SSM_EMP-main/src/main/webapp/WEB-INF"
"last_opened_file_path": "C:/Users/耿春莹/Desktop/SSM_EMP-main/target/SSM_EMP-1.0-SNAPSHOT/WEB-INF/lib"
}
}]]></component>
<component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS">
<recent name="C:\Users\耿春莹\Desktop\SSM_EMP-main\src\main\webapp\WEB-INF" />
<recent name="C:\Users\耿春莹\Desktop\SSM_EMP-main\target\SSM_EMP-1.0-SNAPSHOT\WEB-INF\lib" />
<recent name="D:\Java\JavaEE\SSM_EMP\src\main\webapp\WEB-INF\pages" />
<recent name="D:\Java\JavaEE\SSM_EMP\src\main\resources\mapper" />
<recent name="D:\Java\JavaEE\SSM_EMP\src\main\resources" />
<recent name="D:\Java\JavaEE\SSM_EMP\src\main\resources\spring" />
</key>
<key name="CreateTestDialog.Recents.Supers">
<recent name="" />
@ -87,24 +85,8 @@
</set>
</option>
</component>
<component name="RunManager" selected="Tomcat Server.tomcat 8.5.27">
<configuration name="UserTest.test01" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<module name="SSM_EMP" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="com.dao.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<option name="PACKAGE_NAME" value="com.dao" />
<option name="MAIN_CLASS_NAME" value="com.dao.UserTest" />
<option name="METHOD_NAME" value="test01" />
<option name="TEST_OBJECT" value="method" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="tomcat 8.5.27" type="#com.intellij.j2ee.web.tomcat.TomcatRunConfigurationFactory" factoryName="Local" APPLICATION_SERVER_NAME="Tomcat 8.5.27" ALTERNATIVE_JRE_ENABLED="true" ALTERNATIVE_JRE_PATH="1.8.0_131">
<component name="RunManager">
<configuration name="Tomcat 8.5.27" type="#com.intellij.j2ee.web.tomcat.TomcatRunConfigurationFactory" factoryName="Local" APPLICATION_SERVER_NAME="Tomcat 8.5.27" ALTERNATIVE_JRE_ENABLED="true" ALTERNATIVE_JRE_PATH="1.8" nameIsGenerated="true">
<option name="BROWSER_ID" value="37cae5b9-e8b2-4949-9172-aafa37fbc09c" />
<option name="UPDATING_POLICY" value="restart-server" />
<deployment>
@ -115,8 +97,8 @@
</artifact>
</deployment>
<server-settings>
<option name="BASE_DIRECTORY_NAME" value="Unnamed_SSM_EMP" />
<option name="HTTP_PORT" value="8082" />
<option name="BASE_DIRECTORY_NAME" value="5eb4bef8-ddb3-4475-82f9-c7ab7f3c22e3" />
<option name="HTTP_PORT" value="8088" />
</server-settings>
<predefined_log_file enabled="true" id="Tomcat" />
<predefined_log_file enabled="true" id="Tomcat Catalina" />
@ -124,7 +106,7 @@
<predefined_log_file id="Tomcat Host Manager" />
<predefined_log_file id="Tomcat Localhost Access" />
<RunnerSettings RunnerId="Debug">
<option name="DEBUG_PORT" value="63279" />
<option name="DEBUG_PORT" value="65407" />
</RunnerSettings>
<ConfigurationWrapper VM_VAR="JAVA_OPTS" RunnerId="Cover">
<option name="USE_ENV_VARIABLES" value="true" />
@ -189,20 +171,10 @@
<method v="2">
<option name="Make" enabled="true" />
<option name="BuildArtifacts" enabled="true">
<artifact name="SSM_EMP:war" />
<artifact name="SSM_EMP-main:war exploded" />
</option>
</method>
</configuration>
<list>
<item itemvalue="JUnit.UserTest.test01" />
<item itemvalue="Tomcat Server.tomcat 8.5.27" />
</list>
<recent_temporary>
<list>
<item itemvalue="JUnit.UserTest.test01" />
</list>
</recent_temporary>
</component>
<component name="ServiceViewManager">
<option name="viewStates">
@ -249,7 +221,7 @@
<workItem from="1625910867526" duration="12426000" />
<workItem from="1625960235071" duration="6732000" />
<workItem from="1626067992775" duration="22528000" />
<workItem from="1681030395444" duration="2197000" />
<workItem from="1681197801365" duration="2012000" />
</task>
<servers />
</component>

@ -0,0 +1,2 @@
# JavaProject
Do some hands-on Java projects

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4" />

@ -1,26 +1,177 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>SSM_EMP</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>SSM_EMP Maven Webapp</name>
<url>http://maven.apache.org</url>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<properties>
<!-- spring版本号 -->
<spring.version>4.0.2.RELEASE</spring.version>
<!-- mybatis版本号 -->
<mybatis.version>3.2.6</mybatis.version>
<!-- log4j日志文件管理包版本 -->
<slf4j.version>1.7.7</slf4j.version>
<log4j.version>1.2.17</log4j.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.20.RELEASE</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<version>4.11</version>
<!-- 表示开发的时候引入,发布的时候不会加载此包 -->
<scope>test</scope>
</dependency>
<!-- spring核心包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-oxm</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- mybatis核心包 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis.version}</version>
</dependency>
<!-- mybatis/spring包 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.2</version>
</dependency>
<!-- 导入java ee jar 包 -->
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
</dependency>
<!-- 导入Mysql数据库链接jar包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
<!-- 导入dbcp的jar包用来在applicationContext.xml中配置数据库 -->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.2.2</version>
</dependency>
<!-- JSTL标签类 -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!-- 日志文件管理包 -->
<!-- log start -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>
<!-- 格式化对象,方便输出日志 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.1.41</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
<!-- log end -->
<!-- 映入JSON -->
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
<!-- 上传组件包 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.9</version>
</dependency>
</dependencies>
<build>
<finalName>SSM_EMP</finalName>
</build>
</project>

@ -12,22 +12,12 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @ClassName DepartmentController
* @Description TODO
* @Author YHT
* @Date 2021/5/30 12:14
*/
@Controller
public class DepartmentController {
@Autowired
private IDeptService deptService;
/***
*
* @param page
* @return
*/
@RequestMapping("/toDepartment")
public ModelAndView toDepartment(Page page){
ModelAndView mv = new ModelAndView();

@ -15,12 +15,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @ClassName EmployeeController
* @Description TODO
* @Author YHT
* @Date 2021/5/30 12:15
*/
@Controller
public class EmployeeController {
@Autowired

@ -11,12 +11,6 @@ import org.springframework.web.servlet.ModelAndView;
import java.util.List;
/**
* @ClassName TestController
* @Description TODO
* @Author YHT
* @Date 2021/5/31 15:19
*/
@Controller
public class TestController {
@Autowired

@ -11,12 +11,7 @@ import org.springframework.web.servlet.ModelAndView;
import java.util.List;
/**
* @ClassName VistorController
* @Description TODO
* @Author YHT
* @Date 2021/5/30 12:17
*/
@Controller
public class VistorController {
@Autowired

@ -16,12 +16,6 @@ import javax.servlet.http.HttpSession;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* @ClassName loginController
* @Description TODO
* @Author YHT
* @Date 2021/5/28 8:02
*/
@Controller
public class loginController {
@Autowired

@ -8,62 +8,46 @@ import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
/**
* @ClassName IDepartmentDao
* @Description TODO
* @Author YHT
* @Date 2021/5/30 15:58
*/
@Repository
public interface IDepartmentDao {
/**
*
* @return
*/
List<Department> findAllDepartment();
/**
*
* @param department
*/
void insertDept(Department department);
/**
*
* @param map
* @return
*/
List<Department> searchByName(Map<String, Object> map);
/**
*
* @return
*/
int getDeptTotal();
/**
*
* @param page
* @return
*/
List<Department> listDept(Page page);
/**
* id
* @param id
* @return
*/
Department findDeptById(int id);
/**
*
* @param department
*/
void modifyDept(Department department);
/**
* id
* @param id
*/
void deleteDept(int id);
}

@ -0,0 +1,29 @@
package com.dao;
import com.entity.Employee;
import com.utils.Page;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
@Repository
public interface IEmployeeDao {
List<Employee> listEmp(Page page);
int getEmpTotal();
List<Employee> searchEmp(Map<String, Object> map);
void addEmp(Employee employee);
Employee selectEmpById(int id);
void modifyEmp(Employee employee);
void deleteEmp(int id);
}

@ -0,0 +1,14 @@
package com.dao;
import com.entity.TestEntity;
import com.utils.Page;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface ITestDao {
List<TestEntity> findAll();
List<TestEntity> list(Page page);
int total();
}

@ -0,0 +1,22 @@
package com.dao;
import com.entity.Visitor;
import com.utils.Page;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
@Repository
public interface IVisitorDao {
List<Visitor> listVisitor(Page page);
int getVisitorTotal();
void addVisitor(Visitor visitor);
Visitor> searchByName(Map<String, Object> map);
}

@ -1,11 +1,5 @@
package com.entity;
/**
* @ClassName Department
* @Description TODO
* @Author YHT
* @Date 2021/5/30 15:58
*/
public class Department {
private Integer id;
private String deptId;

@ -4,12 +4,6 @@ import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* @ClassName Employee
* @Description TODO
* @Author YHT
* @Date 2021/7/9 8:51
*/
public class Employee {
private Integer id;
private String empId;

@ -1,11 +1,5 @@
package com.entity;
/**
* @ClassName TestEntity
* @Description TODO
* @Author YHT
* @Date 2021/5/31 15:16
*/
public class TestEntity {
private Integer id;
private String num;

@ -2,12 +2,7 @@ package com.entity;
import java.util.Date;
/**
* @ClassName Vistor
* @Description TODO
* @Author YHT
* @Date 2021/7/9 21:31
*/
public class Visitor {
private Integer id;
private String name;

@ -5,12 +5,7 @@ import com.utils.Page;
import java.util.List;
/**
* @ClassName IDeptService
* @Description TODO
* @Author YHT
* @Date 2021/5/30 16:01
*/
public interface IDeptService {
/**
*

@ -6,12 +6,7 @@ import com.utils.Page;
import java.util.List;
import java.util.Map;
/**
* @ClassName IEmpServoce
* @Description TODO
* @Author YHT
* @Date 2021/7/9 10:41
*/
public interface IEmpService {
/**
*

@ -0,0 +1,45 @@
package com.service;
import com.entity.User;
import org.springframework.stereotype.Service;
import java.util.Map;
public interface IUserService {
/**
* ID
* @param id ID
* @return
*/
User findById(Integer id);
/**
*
* @param name
* @param password
* @return
*/
User findByNameAndPwd(String name, String password);
/**
*
* @param user
* @return
*/
int insertUser(User user);
/**
*
* @param user
*/
void modifyUser(User user);
/**
*
* @param password
* @param id
*/
void modifyPwd(String password, Integer id);
}

@ -5,12 +5,7 @@ import com.utils.Page;
import java.util.List;
/**
* @ClassName IVisitorService
* @Description TODO
* @Author YHT
* @Date 2021/7/9 21:47
*/
public interface IVisitorService {
/**
* 访

@ -12,12 +12,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @ClassName DeptServiceImpl
* @Description TODO
* @Author YHT
* @Date 2021/5/30 16:02
*/
@Service
public class DeptServiceImpl implements IDeptService {
@Autowired

@ -10,12 +10,7 @@ import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
* @ClassName EmpServiceImpl
* @Description TODO
* @Author YHT
* @Date 2021/7/9 10:42
*/
@Service
public class EmpServiceImpl implements IEmpService {
@Autowired

@ -4,12 +4,7 @@ import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* @ClassName MD5Utils
* @Description TODO
* @Author YHT
* @Date 2021/5/29 19:10
*/
public class MD5Utils {
public static String stringToMD5(String plainText) {
byte[] secretBytes = null;

@ -1,14 +1,14 @@
driver=com.mysql.jdbc.Driver
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/sp_emp
username=root
password=root
#定义初始连接数
password=123456
initialSize=0
#定义最大连接数
maxActive=20
#定义最大空闲
maxIdle=20
#定义最小空闲
minIdle=1
#定义最长等待时间
maxWait=60000

@ -1,19 +1,18 @@
#定义LOG输出级别
log4j.rootLogger=INFO,Console,File
#定义日志输出目的地为控制台
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
#可以灵活地指定日志输出格式,下面一行是指定具体的格式
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n
#文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.File = org.apache.log4j.RollingFileAppender
#指定输出目录
log4j.appender.File.File = logs/ssm.log
#定义文件最大大小
log4j.appender.File.MaxFileSize = 10MB
# 输出所以日志如果换成DEBUG表示输出DEBUG以上级别日志
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dao.IDepartmentDao">
<!--查询所有部门信息-->
<select id="findAllDepartment" resultType="com.entity.Department">
select * from t_dept;
</select>
<!--根据id查找部门-->
<select id="findDeptById" resultType="com.entity.Department" parameterType="int">
select * from t_dept where id = #{id};
</select>
<!--按页数查找部门信息-->
<select id="listDept" resultType="com.entity.Department">
select * from t_dept
<if test="start!=null and count!=null">
limit #{start},#{count}
</if>
</select>
<!--添加部门-->
<insert id="insertDept" parameterType="com.entity.Department">
insert into t_dept(deptId, deptName) values(#{deptId}, #{deptName});
</insert>
<!--修改部门信息-->
<update id="modifyDept" parameterType="com.entity.Department">
update t_dept set deptId = #{deptId}, deptName = #{deptName} where id = #{id}
</update>
<!--根据名称查找部门-->
<select id="searchByName" parameterType="Map" resultType="com.entity.Department">
select * from t_dept where deptName like #{deptName}
<if test="page.start!=null and page.count!=null">
limit #{page.start},#{page.count}
</if>
</select>
<!--获取记录总数-->
<select id="getDeptTotal" resultType="int">
select count(*) from t_dept;
</select>
<!--根据id查找部门信息-->
<delete id="deleteDept" parameterType="int">
delete from t_dept where id = #{id}
</delete>
</mapper>

@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dao.IEmployeeDao">
<!--查询所有员工信息-->
<select id="findAllEmp" resultType="com.entity.Employee">
select * from t_emp;
</select>
<!--按页数查找员工信息-->
<select id="listEmp" resultType="com.entity.Employee">
select * from t_emp
<if test="start!=null and count!=null">
limit #{start},#{count}
</if>
</select>
<!--根据条件查找员工信息-->
<select id="searchEmp" parameterType="Map" resultType="com.entity.Employee">
select * from t_emp where 1=1
<if test="name!=null">
and name like #{name}
</if>
<if test="email!=null">
and email = #{email}
</if>
<if test="empId!=null">
and empId = #{empId}
</if>
<if test="page.start!=null and page.count!=null">
limit #{page.start},#{page.count}
</if>
</select>
<!--添加员工-->
<insert id="addEmp" parameterType="com.entity.Employee">
insert into t_emp(empId, name, gender, email, birth, deptId) values(#{empId}, #{name}, #{gender}, #{email}, #{birth}, #{deptId});
</insert>
<!--修改员工信息-->
<update id="modifyEmp" parameterType="com.entity.Employee">
update t_emp set empId = #{empId}, name = #{name}, gender = #{gender}, email = #{email}, birth = #{birth}, deptId = #{deptId} where id = #{id}
</update>
<!--获取记录总数-->
<select id="getEmpTotal" resultType="int">
select count(*) from t_emp;
</select>
<!--根据id查找员工-->
<select id="selectEmpById" resultType="com.entity.Employee">
select * from t_emp where id = #{id};
</select>
<!--删除员工-->
<delete id="deleteEmp" parameterType="int">
delete from t_emp where id = #{id}
</delete>
</mapper>

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 设置为IUserDao接口方法提供sql语句配置 -->
<mapper namespace="com.dao.ITestDao">
<select id="findAll" resultType="com.entity.TestEntity">
select * from t_test;
</select>
<select id="list" resultType="com.entity.TestEntity">
select * from t_test
<if test="start!=null and count!=null">
limit #{start},#{count}
</if>
</select>
<select id="total" resultType="int">
select count(*) from t_test;
</select>
</mapper>

@ -1,6 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
</beans>
<!-- 设置为IUserDao接口方法提供sql语句配置 -->
<mapper namespace="com.dao.IUserDao">
<!--根据id查找用户-->
<select id="findById" resultType="com.entity.User" parameterType="Integer">
select * from t_user where id = #{id};
</select>
<!--根据用户名和密码查找用户-->
<select id="findByNameAndPwd" resultType="com.entity.User" parameterType="Map">
select * from t_user where name = #{name} and password = #{password};
</select>
<!--添加用户-->
<insert id="insertUser" parameterType="com.entity.User">
insert into t_user(name, password, identity, telNumber, idCard, email) values(#{name}, #{password}, #{identity}, #{telNumber}, #{idCard}, #{email});
</insert>
<!--修改用户-->
<update id="modifyUser" parameterType="com.entity.User">
update t_user set name = #{name}, identity = #{identity}, telNumber = #{telNumber}, idCard = #{idCard}, email = #{email} where id = #{id}
</update>
<!--修改用户密码-->
<update id="modifyPwd" parameterType="Map">
update t_user set password = #{password} where id = #{id}
</update>
</mapper>

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dao.IVisitorDao">
<!--按页数查找访客信息-->
<select id="listVisitor" resultType="com.entity.Visitor">
select * from t_visitor
<if test="start!=null and count!=null">
limit #{start},#{count}
</if>
</select>
<!--获取记录总数-->
<select id="getVisitorTotal" resultType="int">
select count(*) from t_visitor;
</select>
<insert id="addVisitor" parameterType="com.entity.Visitor">
insert into t_visitor(name, identity, telPhone, email, visitTime) values(#{name}, #{identity}, #{telPhone}, #{email}, #{visitTime});
</insert>
<!--根据名称查找访客信息-->
<select id="searchByName" parameterType="Map" resultType="com.entity.Visitor">
select * from t_visitor where name like #{name}
<if test="page.start!=null and page.count!=null">
limit #{page.start},#{page.count}
</if>
</select>
</mapper>

@ -6,11 +6,46 @@
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<title>Title</title>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
<script src="js/index.js"></script>
<link rel="stylesheet" href="css/index.css"/>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<table class="table table-striped table-bordered text-center" style="margin-top:80px">
<tr>
<td>开发工具</td>
<td>IDEA 2019</td>
</tr>
<tr>
<td>前端技术</td>
<td>Bootstrap</td>
</tr>
<tr>
<td>框架</td>
<td>Spring+Spring MVC+MyBatis</td>
</tr>
</table>
</div>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

@ -0,0 +1,94 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<script src="js/index.js"></script>
<link rel="stylesheet" href="css/index.css"/>
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<ol class="breadcrumb">
<li>员工管理</li>
<li>员工信息</li>
</ol>
<form action="${pageContext.request.contextPath}/addEmp" class="form-horizontal">
<div class="form-group">
<label class="col-sm-3 control-label">员工号</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="empId">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">姓名</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="name">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">性别</label>
<div class="col-sm-3">
<div class="radio">
<label>
<input type="radio" name="gender" value="1" checked> 男
</label>
</div>
</div>
<div class="col-sm-3">
<div class="radio">
<label>
<input type="radio" name="gender" value="0"> 女
</label>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">邮箱</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="email">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">生日</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="birth">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">所属部门</label>
<div class="col-sm-7">
<select name="deptId" class="selectpicker" style="display:block;height: 40px;font-size: 16px">
<c:forEach items="${deptList}" var="dept" >
<div class="col-sm-4" >
<option value="${dept.id}">
${dept.deptName}
</option>
</div>
</c:forEach>
</select>
</div>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary">确认</button>
</div>
</form>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

@ -0,0 +1,129 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<%-- <script src="js/index.js"></script>--%>
<link rel="stylesheet" href="css/index.css"/>
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<ol class="breadcrumb">
<li>部门管理</li>
<li>部门信息</li>
</ol>
<form class="form-inline" action="${pageContext.request.contextPath}/searchDept">
<div class="form-group">
<input type="text" class="form-control" placeholder="请输入部门名称" name="deptName">
</div>
<button class="btn btn-info" type="submit"><span class="glyphicon glyphicon-search"></span></button>
</form>
<hr>
<div class="text-center" style="display:block">
<button class="btn btn-primary col-sm-1" style="margin-right:10px" data-toggle="modal" data-target="#studentAddModal"><span class="glyphicon glyphicon-plus" style="margin-right: 10px;"></span>添加</button>
<button class="btn btn-warning col-sm-1"><span class="glyphicon glyphicon-upload" style="margin-right: 10px;"></span>导出</button>
<label class="pull-right" style="margin-right:20px">共有数据${total}条</label>
<div class="modal fade" id="studentAddModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel2">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="myModalLabel2">添加部门</h4>
</div>
<div class="modal-body">
<form action="${pageContext.request.contextPath}/addDept" class="form-horizontal">
<div class="form-group">
<label class="col-sm-3 control-label">部门号</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="deptId">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">部门名称</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="deptName">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">取消</button>
<button type="submit" class="btn btn-primary">确定</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<table class="table table-striped table-bordered text-center" style="margin-top:80px">
<thead>
<tr>
<th class="text-center">部门号</th>
<th class="text-center">部门名称</th>
<th class="text-center">操作</th>
</tr>
</thead>
<tbody>
<c:forEach var="dept" items="${deptList}" >
<tr>
<td>${dept.deptId}</td>
<td>${dept.deptName}</td>
<td>
<a href="${pageContext.request.contextPath}/toModifyDept?id=${dept.id}" ><span class="glyphicon glyphicon-pencil" style="margin-right:10px"></span></a>
<a href="${pageContext.request.contextPath}/deleteDept?id=${dept.id}"><span class="glyphicon glyphicon-trash"></span></a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
<div class="row text-center">
<div class="form-group">
<label class="pull-right" style="margin-right:20px">当前第${page.currentIndex}页,共${page.totalIndex}页</label>
</div>
<form class="form-inline" style="padding:20px" action="">
<div class="col-sm-6 col-sm-offset-2">
<ul class="pagination">
<li><a href="${pageContext.request.contextPath}/toDepartment?start=0" aria-label="Previous"><span aria-hidden="true">首页</span></a></li>
<c:if test="${page.currentIndex != 1}">
<li><a href="${pageContext.request.contextPath}/toDepartment?start=${page.start - page.count}&currentIndex=${page.currentIndex-1}" aria-label="Previous"><span aria-hidden="true">上一页</span></a></li>
</c:if>
<c:if test="${page.currentIndex != page.totalIndex}">
<li><a href="${pageContext.request.contextPath}/toDepartment?start=${page.start + page.count}&currentIndex=${page.currentIndex+1}" aria-label="Next"><span aria-hidden="true">下一页</span></a></li>
</c:if>
<li><a href="${pageContext.request.contextPath}/toDepartment?start=${page.last}" aria-label="Previous"><span aria-hidden="true">末页</span></a></li>
</ul>
</div>
</form>
</div>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
<script>
$(function () {
$(".modifyOperate").click(function () {
var td = $(".modifyOperate").parent().parent().find('td');
console.log(td.eq(1).text());
console.log(td.eq(0).text());
// $("#update_id_input").val(tr.eq(1).text())
// $("#update_name_input").val(tr.eq(2).text());
});
});
</script>
</html>

@ -0,0 +1,104 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<script src="js/index.js"></script>
<link rel="stylesheet" href="css/index.css"/>
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<ol class="breadcrumb">
<li>员工管理</li>
<li>员工信息</li>
</ol>
<form class="form-inline" action="${pageContext.request.contextPath}/searchEmp">
<div class="form-group">
<input type="text" class="form-control" placeholder="请输入姓名" name="name">
</div>
<div class="form-group">
<input type="text" class="form-control" placeholder="请输入邮箱" name="email">
</div>
<div class="form-group">
<input type="text" class="form-control" placeholder="请输入员工号" name="empId">
</div>
<button class="btn btn-info"><span class="glyphicon glyphicon-search"></span></button>
</form>
<hr>
<div class="text-center" style="display:block">
<a href="${pageContext.request.contextPath}/toAddEmp" class="btn btn-primary col-sm-1" style="margin-right:10px" ><span class="glyphicon glyphicon-plus" style="margin-right: 10px;"></span>添加</a>
<button class="btn btn-warning col-sm-1"><span class="glyphicon glyphicon-upload" style="margin-right: 10px;"></span>导出</button>
</div>
<label class="pull-right" style="margin-right:20px">共有数据${total}条</label>
<table class="table table-striped table-bordered text-center" style="margin-top:80px">
<thead>
<tr>
<th class="text-center">员工号</th>
<th class="text-center">姓名</th>
<th class="text-center">性别</th>
<th class="text-center">邮箱</th>
<th class="text-center">生日</th>
<th class="text-center">所属部门</th>
<th class="text-center">操作</th>
</tr>
</thead>
<tbody>
<c:forEach var="emp" items="${empList}" >
<tr>
<td>${emp.empId}</td>
<td>${emp.name}</td>
<td>${emp.gender == 1 ? "男" : "女"}</td>
<td>${emp.email}</td>
<td><fmt:formatDate value="${emp.birth}" pattern="yyyy-MM-dd hh:mm" />
</td>
<td>${emp.deptName}</td>
<td>
<a href="${pageContext.request.contextPath}/toModifyEmp?id=${emp.id}" ><span class="glyphicon glyphicon-pencil" style="margin-right:10px"></span></a>
<a href="${pageContext.request.contextPath}/deleteEmp?id=${emp.id}"><span class="glyphicon glyphicon-trash"></span></a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
<div class="row text-center">
<div class="form-group">
<label class="pull-right" style="margin-right:20px">当前第${page.currentIndex}页,共${page.totalIndex}页</label>
</div>
<form class="form-inline" style="padding:20px" action="">
<div class="col-sm-6 col-sm-offset-2">
<ul class="pagination">
<li><a href="${pageContext.request.contextPath}/toEmployee?start=0" aria-label="Previous"><span aria-hidden="true">首页</span></a></li>
<c:if test="${page.currentIndex != 1}">
<li><a href="${pageContext.request.contextPath}/toEmployee?start=${page.start - page.count}&currentIndex=${page.currentIndex-1}" aria-label="Previous"><span aria-hidden="true">上一页</span></a></li>
</c:if>
<c:if test="${page.currentIndex != page.totalIndex}">
<li><a href="${pageContext.request.contextPath}/toEmployee?start=${page.start + page.count}&currentIndex=${page.currentIndex+1}" aria-label="Next"><span aria-hidden="true">下一页</span></a></li>
</c:if>
<li><a href="${pageContext.request.contextPath}/toEmployee?start=${page.last}" aria-label="Previous"><span aria-hidden="true">末页</span></a></li>
</ul>
</div>
</form>
</div>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
<script>
</script>
</html>

@ -0,0 +1,7 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<footer class="footer" style="background-color:#1C1C1C;color:white;height:80px;line-height:30px">
<div class="container text-center">
<p>所属小组:第九组 &nbsp;&nbsp;&nbsp;电话12345678901<br />地址:河南省郑州市 &nbsp;&nbsp;&nbsp; 邮编123456</p>
</div>
</footer>

@ -0,0 +1,38 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!-- 侧边栏 -->
<div class="navbar-default navbar-collapse col-sm-2" id="slide-left">
<ul class="nav col-sm-12 slide-group">
<li>
<a href="#sub1" class="collapse" data-toggle="collapse">员工管理<span class="glyphicon glyphicon-chevron-right pull-right"></span></a>
<ul id="sub1" class="nav collapse">
<li class="text-center"><a href="${pageContext.request.contextPath}/toEmployee"><span class="glyphicon glyphicon-list-alt"></span>&nbsp;员工信息</a></li>
</ul>
</li>
<li>
<a href="#sub2" class="collapse" data-toggle="collapse">部门管理<span class="glyphicon glyphicon-chevron-right pull-right"></span></a>
<ul id="sub2" class="nav collapse">
<li class="text-center"><a href="${pageContext.request.contextPath}/toDepartment"><span class="glyphicon glyphicon-book"></span>&nbsp;部门信息</a></li>
</ul>
</li>
<li>
<a href="#sub3" class="collapse" data-toggle="collapse">访客信息<span class="glyphicon glyphicon-chevron-right pull-right"></span></a>
<ul id="sub3" class="nav collapse">
<li class="text-center"><a href="${pageContext.request.contextPath}/toVisitor"><span class="glyphicon glyphicon-eye-open"></span>&nbsp;访客列表</a></li>
</ul>
</li>
<li>
<a href="#sub4" class="collapse" data-toggle="collapse">个人资料<span class="glyphicon glyphicon-chevron-right pull-right"></span></a>
<ul id="sub4" class="nav collapse">
<li class="text-center"><a href="${pageContext.request.contextPath}/toUserMsg?id=${userId}"><span class="glyphicon glyphicon-dashboard"></span>&nbsp;个人信息</a></li>
<li class="text-center"><a href="${pageContext.request.contextPath}/toModifyPwd?id=${userId}"><span class="glyphicon glyphicon-eye-open"></span>&nbsp;修改密码</a></li>
</ul>
</li>
<%-- <li>--%>
<%-- <a href="#sub5" class="collapse" data-toggle="collapse">测试<span class="glyphicon glyphicon-chevron-right pull-right"></span></a>--%>
<%-- <ul id="sub5" class="nav collapse">--%>
<%-- <li class="text-center"><a href="${pageContext.request.contextPath}/getTest"><span class="glyphicon glyphicon-eye-open"></span>&nbsp;测试列表</a></li>--%>
<%-- </ul>--%>
<%-- </li>--%>
</ul>
</div>

@ -0,0 +1,91 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<meta charset="utf-8">
<title>员工管理系统</title>
<!-- 引入bootstrap -->
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<!-- 引入jquery -->
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
<!-- 引入自定义js -->
<script src="/js/index.js"></script>
<style>
#carousel_container{
margin-bottom: 20px;
}
#carousel_container img{
width:780px;
height: 480px;
}
</style>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<!-- 右侧内容 -->
<div class="col-sm-8 page-main">
<ol class="breadcrumb">
<li>系统主页</li>
</ol>
<div class="row">
<div class="col-md-10 col-md-offset-1">
<!-- 轮播图 -->
<div class="carousel slide" id="carousel_container" data-ride="carousel" data-interval="2000">
<!-- 图片容器 -->
<div class="carousel carousel-inner">
<div class="item active">
<img src="img/build1.jpg">
</div>
<div class="item">
<img src="img/build2.jpg">
</div>
<div class="item">
<img src="img/build3.jpg">
</div>
<div class="item">
<img src="img/build4.jpg">
</div>
</div>
<!-- 小圆圈容器 -->
<ol class="carousel-indicators">
<li data-slide-to="0" data-target="#carousel_container"></li>
<li data-slide-to="1" data-target="#carousel_container"></li>
<li data-slide-to="2" data-target="#carousel_container"></li>
<li data-slide-to="3" data-target="#carousel_container"></li>
</ol>
<!-- 左右按钮 -->
<a href="#carousel_container" data-slide="prev" class="left carousel-control">
<span class="glyphicon glyphicon-chevron-left"></span>
</a>
<a href="#carousel_container" data-slide="next" class="right carousel-control">
<span class="glyphicon glyphicon-chevron-right"></span>
</a>
</div>
</div>
</div>
</div>
<div class="col-sm-2">
<div class="panel panel-default">
<div class="panel-heading" style="background-color:skyblue">
系统介绍
</div>
<div class="panel-body">
<marquee scrolldelay="100">
<p>&nbsp;&nbsp;&nbsp;&nbsp;系统名称:员工信息采集系统 第九组成员介绍:耿春莹 秦幸利 孙博 刘静 在当今社会,互联网空间的发展,给人们的工作和生活带来了极大的便利和高效,信息化、电子化已经成为节约运营成本,提高工作效率的首选。当前大量企业的员工管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。因此部分企业需求,设计企业员工信息管理系统,以帮助企业达到员工管理办公自动化、节约管理成本、提高企业工作效率的目的。
企业员工信息管理系统采用B/S结构主要对企业员工的信息以及跟人事相关的工作流程进行集中管理方便企业建立一个完善的、强大的员工信息数据库。使用HTML和Java设计管理页面和编写操作程序完成数据输入、修改、存储、调用查询等功能并使用MySQL数据库形成数据表进行数据存储。</p>
</marquee>
</div>
</div>
</div>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

@ -0,0 +1,53 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
<script src="js/index.js"></script>
<link rel="stylesheet" href="css/index.css"/>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<ol class="breadcrumb">
<li>个人资料</li>
<li>修改密码</li>
</ol>
<form action="${pageContext.request.contextPath}/modifyPwd" class="form-horizontal" id="registerForms">
<input type="hidden" value="${loginUser.id}" name="id">
<div class="form-group">
<label class="col-sm-3 control-label">新密码</label>
<div class="col-sm-4 register-username-area">
<input type="password" name="password" class="form-control">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">确认密码</label>
<div class="col-sm-4 register-email-area">
<input type="password" name="rePassword" class="form-control" >
</div>
</div>
<div class="modal-footer">
<button class="btn btn-default" data-dismiss="modal">取消</button>
<button class="btn btn-primary" type="submit">修改</button>
</div>
</form>
</div>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

@ -0,0 +1,111 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<%-- <script src="js/index.js"></script>--%>
<link rel="stylesheet" href="css/index.css"/>
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<div class="text-center" style="display:block">
<label class="pull-right" style="margin-right:20px">共有数据${total}条</label>
</div>
<table id="table" class="table table-striped table-bordered text-center" style="margin-top:80px">
<thead>
<tr>
<th class="text-center">部门号</th>
<th class="text-center">名称</th>
</tr>
</thead>
<tbody>
<c:forEach var="test" items="${testList}" >
<tr>
<td>${test.id}</td>
<td>${test.num}</td>
<td>
<a href="" data-toggle="modal" data-target="#deptModifyModal" data-orderId="${test.id}"><span class="glyphicon glyphicon-pencil" style="margin-right:10px"></span></a>
<!-- Modal -->
<div class="modal fade" id="deptModifyModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel3">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<h4 class="modal-title" id="myModalLabel3">信息修改</h4>
</div>
<div class="modal-body">
<form action="${pageContext.request.contextPath}/modifyDept" class="form-horizontal" id="updateform">
<input value="${dept.id}" name="id" hidden>
<div class="form-group">
<label class="col-sm-3 control-label">部门号</label>
<div class="col-sm-7">
<input type="text" class="form-control" value="${test.id}" name="id">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">部门名称</label>
<div class="col-sm-7">
<input type="text" class="form-control" value="${test.num}" name="num">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">取消</button>
<button type="submit" class="btn btn-primary">确认</button>
</div>
</form>
</div>
</div>
</div>
</div>
<a href=""><span class="glyphicon glyphicon-trash"></span></a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
<div class="row text-center">
<div class="form-group">
<label class="pull-right" style="margin-right:20px">当前第${page.currentIndex}页,共${page.totalIndex}页</label>
</div>
<form class="form-inline" style="padding:20px" action="">
<div class="col-sm-6 col-sm-offset-2">
<ul class="pagination">
<li><a href="${pageContext.request.contextPath}/getTest?start=0" aria-label="Previous"><span aria-hidden="true">首页</span></a></li>
<c:if test="${page.currentIndex != 1}">
<li><a href="${pageContext.request.contextPath}/getTest?start=${page.start - page.count}&currentIndex=${page.currentIndex-1}" aria-label="Previous"><span aria-hidden="true">上一页</span></a></li>
</c:if>
<c:if test="${page.currentIndex != page.totalIndex}">
<li><a href="${pageContext.request.contextPath}/getTest?start=${page.start + page.count}&currentIndex=${page.currentIndex+1}" aria-label="Next"><span aria-hidden="true">下一页</span></a></li>
</c:if>
<li><a href="${pageContext.request.contextPath}/getTest?start=${page.last}" aria-label="Previous"><span aria-hidden="true">末页</span></a></li>
</ul>
</div>
</form>
</div>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
<script>
$("#deptModifyModal").on('show.bs.modal', function (e) {
let deleteBookId = $(e.relatedTarget).data("orderid");
console.log(deleteBookId)
});
</script>
</html>

@ -0,0 +1,40 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!-- 导航 -->
<nav class="navbar navbar-default navbar-static-top navbar-inverse">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#slide-left">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<label class="navbar-brand">员工信息管理</label>
</div>
<ul class="nav navbar-nav nav-menu" style="margin-right: 25px;" >
<li ><a href="${pageContext.request.contextPath}/main">首页</a></li>
<li><a href="">使用指南</a></li>
<li><a href="${pageContext.request.contextPath}/about">关于</a></li>
</ul>
<!-- 搜索框 -->
<form class="navbar-form navbar-left">
<div class="input-group">
<input type="" class="form-control" />
<span class="input-group-btn">
<button type="button" class="btn btn-default"><span class="glyphicon glyphicon-search"></span></button>
</span>
</div>
</form>
<ul class="nav navbar-nav navbar-right pull-right" style="margin-right: 40px;">
<li><a href="">欢迎&nbsp;${userName} 登录</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">我的
<span class="caret"></span></a>
<ul class="dropdown-menu text-center">
<li role="separator" class="divider"></li>
<li class="text-center"><a href="index.jsp">退出</a></li>
</ul>
</li>
</ul>
</nav>

@ -0,0 +1,62 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<%-- <script src="js/index.js"></script>--%>
<link rel="stylesheet" href="css/index.css"/>
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<ol class="breadcrumb">
<li>部门管理</li>
<li>部门信息</li>
</ol>
<form action="${pageContext.request.contextPath}/modifyDept" class="form-horizontal" id="updateform">
<input value="${dept.id}" name="id" hidden>
<div class="form-group">
<label class="col-sm-3 control-label">部门号</label>
<div class="col-sm-7">
<input type="text" class="form-control" value="${dept.deptId}" name="deptId">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">部门名称</label>
<div class="col-sm-7">
<input type="text" class="form-control" value="${dept.deptName}" name="deptName">
</div>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary">确认</button>
</div>
</form>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
<script>
$(function () {
$(".modifyOperate").click(function () {
var td = $(".modifyOperate").parent().parent().find('td');
console.log(td.eq(1).text());
console.log(td.eq(0).text());
// $("#update_id_input").val(tr.eq(1).text())
// $("#update_name_input").val(tr.eq(2).text());
});
});
</script>
</html>

@ -0,0 +1,96 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<script src="js/index.js"></script>
<link rel="stylesheet" href="css/index.css"/>
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<ol class="breadcrumb">
<li>员工管理</li>
<li>员工信息</li>
</ol>
<form action="${pageContext.request.contextPath}/modifyEmp" class="form-horizontal">
<input type="hidden" class="form-control" name="id" value="${emp.id}">
<div class="form-group">
<label class="col-sm-3 control-label">员工号</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="empId" value="${emp.empId}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">姓名</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="name" value="${emp.name}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">性别</label>
<div class="col-sm-3">
<div class="radio">
<label>
<input type="radio" name="gender" value="1" <c:if test="${emp.gender==1}"> checked='checked'</c:if> > 男
</label>
</div>
</div>
<div class="col-sm-3">
<div class="radio">
<label>
<input type="radio" name="gender" value="0" <c:if test="${emp.gender==0}"> checked='checked'</c:if>> 女
</label>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">邮箱</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="email" value="${emp.email}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">生日</label>
<div class="col-sm-7">
<input type="text" class="form-control" name="birth" value="<fmt:formatDate value='${emp.birth}' pattern='yyyy-MM-dd hh:mm' />" >
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">所属部门</label>
<div class="col-sm-7">
<select name="deptId" class="selectpicker" style="display:block;height: 40px;font-size: 16px">
<c:forEach items="${deptList}" var="dept" >
<div class="col-sm-4" >
<option value="${dept.id}">
${dept.deptName}
</option>
</div>
</c:forEach>
</select>
</div>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary">确认</button>
</div>
</form>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

@ -0,0 +1,82 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
<script src="js/index.js"></script>
<link rel="stylesheet" href="css/index.css"/>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<ol class="breadcrumb">
<li>个人资料</li>
<li>个人信息</li>
</ol>
<form action="${pageContext.request.contextPath}/modifyUserMsg" class="form-horizontal" id="registerForms">
<input type="hidden" value="${loginUser.id}" name="id">
<div class="form-group">
<label class="col-sm-3 control-label">用户名</label>
<div class="col-sm-4 register-username-area">
<input type="text" name="name" class="form-control" value="${loginUser.name}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">身份</label>
<div class="col-sm-3">
<div class="radio">
<label>
<input type="radio" name="identity" value="0" <c:if test="${loginUser.identity==0}"> checked='checked'</c:if> > 员工
</label>
</div>
</div>
<div class="col-sm-3">
<div class="radio">
<label>
<input type="radio" name="identity" value="1" <c:if test="${loginUser.identity==1}"> checked='checked'</c:if>> 管理员
</label>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">手机号</label>
<div class="col-sm-4 register-photo-area">
<input type="text" name="telNumber" class="form-control" value="${loginUser.telNumber}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">身份证号</label>
<div class="col-sm-4 register-idNumber-area">
<input type="text" name="idCard" class="form-control" value="${loginUser.idCard}">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">邮箱</label>
<div class="col-sm-4 register-email-area">
<input type="text" name="email" class="form-control" value="${loginUser.email}">
</div>
</div>
<div class="modal-footer">
<button class="btn btn-default" data-dismiss="modal">取消</button>
<button class="btn btn-primary" type="submit">修改</button>
</div>
</form>
</div>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

@ -0,0 +1,89 @@
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" />
<script src="js/jquery-3.5.1.js"></script>
<script src="bootstrap/js/bootstrap.min.js"></script>
<script src="js/index.js"></script>
<link rel="stylesheet" href="css/index.css"/>
</head>
<body>
<jsp:include page="topbar.jsp"></jsp:include>
<!-- 主题内容 -->
<div class="container-fluid">
<div class="row">
<jsp:include page="leftMenu.jsp"></jsp:include>
<div class="col-sm-10 page-main">
<ol class="breadcrumb">
<li>访客管理</li>
<li>访客列表</li>
</ol>
<form class="form-inline" action="${pageContext.request.contextPath}/searchVisitor">
<div class="form-group">
<input type="text" class="form-control" placeholder="请输入姓名" name="name">
</div>
<button class="btn btn-info" type="submit"><span class="glyphicon glyphicon-search"></span></button>
</form>
<hr>
<div class="text-center" style="display:block">
<button class="btn btn-warning col-sm-1"><span class="glyphicon glyphicon-upload" style="margin-right: 10px;"></span>导出</button>
<label class="pull-right" style="margin-right:20px">共有数据${total}条</label>
</div>
<table class="table table-striped table-bordered text-center" style="margin-top:80px">
<thead>
<tr>
<th class="text-center">姓名</th>
<th class="text-center">是否管理员</th>
<th class="text-center">邮箱</th>
<th class="text-center">手机号</th>
<th class="text-center">访问时间</th>
</tr>
</thead>
<tbody>
<c:forEach var="visitor" items="${visitorList}" >
<tr>
<td>${visitor.name}</td>
<td>${visitor.identity == 1 ? "是" : "否"}</td>
<td>${visitor.email}</td>
<td>${visitor.telPhone}</td>
<td><fmt:formatDate value="${visitor.visitTime}" pattern="yyyy-MM-dd hh:mm" /></td>
</tr>
</c:forEach>
</tbody>
</table>
<div class="row text-center">
<div class="form-group">
<label class="pull-right" style="margin-right:20px">当前第${page.currentIndex}页,共${page.totalIndex}页</label>
</div>
<form class="form-inline" style="padding:20px" action="">
<div class="col-sm-6 col-sm-offset-2">
<ul class="pagination">
<li><a href="${pageContext.request.contextPath}/toVisitor?start=0" aria-label="Previous"><span aria-hidden="true">首页</span></a></li>
<c:if test="${page.currentIndex != 1}">
<li><a href="${pageContext.request.contextPath}/toVisitor?start=${page.start - page.count}&currentIndex=${page.currentIndex-1}" aria-label="Previous"><span aria-hidden="true">上一页</span></a></li>
</c:if>
<c:if test="${page.currentIndex != page.totalIndex}">
<li><a href="${pageContext.request.contextPath}/toVisitor?start=${page.start + page.count}&currentIndex=${page.currentIndex+1}" aria-label="Next"><span aria-hidden="true">下一页</span></a></li>
</c:if>
<li><a href="${pageContext.request.contextPath}/toVisitor?start=${page.last}" aria-label="Previous"><span aria-hidden="true">末页</span></a></li>
</ul>
</div>
</form>
</div>
</div>
</div>
</div>
<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

@ -1,7 +1,55 @@
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<display-name>Archetype Created Web Application</display-name>
</web-app>
<!-- Spring和mybatis的配置文件 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-mybatis.xml</param-value>
</context-param>
<!-- 编码过滤器 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<async-supported>true</async-supported>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Spring监听器 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 防止Spring内存溢出监听器 -->
<listener>
<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
</listener>
<!-- Spring MVC servlet -->
<servlet>
<servlet-name>SpringMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-SpringMVC.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>SpringMVC</servlet-name>
<!-- 此处可以可以配置成*.do对应struts的后缀习惯 -->
<url-pattern>/</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>/index.jsp</welcome-file>
</welcome-file-list>
</web-app>

@ -0,0 +1,587 @@
/*!
* Bootstrap v3.3.7 (http://getbootstrap.com)
* Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
.btn-default,
.btn-primary,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger {
text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
}
.btn-default:active,
.btn-primary:active,
.btn-success:active,
.btn-info:active,
.btn-warning:active,
.btn-danger:active,
.btn-default.active,
.btn-primary.active,
.btn-success.active,
.btn-info.active,
.btn-warning.active,
.btn-danger.active {
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn-default.disabled,
.btn-primary.disabled,
.btn-success.disabled,
.btn-info.disabled,
.btn-warning.disabled,
.btn-danger.disabled,
.btn-default[disabled],
.btn-primary[disabled],
.btn-success[disabled],
.btn-info[disabled],
.btn-warning[disabled],
.btn-danger[disabled],
fieldset[disabled] .btn-default,
fieldset[disabled] .btn-primary,
fieldset[disabled] .btn-success,
fieldset[disabled] .btn-info,
fieldset[disabled] .btn-warning,
fieldset[disabled] .btn-danger {
-webkit-box-shadow: none;
box-shadow: none;
}
.btn-default .badge,
.btn-primary .badge,
.btn-success .badge,
.btn-info .badge,
.btn-warning .badge,
.btn-danger .badge {
text-shadow: none;
}
.btn:active,
.btn.active {
background-image: none;
}
.btn-default {
text-shadow: 0 1px 0 #fff;
background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #dbdbdb;
border-color: #ccc;
}
.btn-default:hover,
.btn-default:focus {
background-color: #e0e0e0;
background-position: 0 -15px;
}
.btn-default:active,
.btn-default.active {
background-color: #e0e0e0;
border-color: #dbdbdb;
}
.btn-default.disabled,
.btn-default[disabled],
fieldset[disabled] .btn-default,
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus,
.btn-default.disabled:active,
.btn-default[disabled]:active,
fieldset[disabled] .btn-default:active,
.btn-default.disabled.active,
.btn-default[disabled].active,
fieldset[disabled] .btn-default.active {
background-color: #e0e0e0;
background-image: none;
}
.btn-primary {
background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88));
background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #245580;
}
.btn-primary:hover,
.btn-primary:focus {
background-color: #265a88;
background-position: 0 -15px;
}
.btn-primary:active,
.btn-primary.active {
background-color: #265a88;
border-color: #245580;
}
.btn-primary.disabled,
.btn-primary[disabled],
fieldset[disabled] .btn-primary,
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus,
.btn-primary.disabled:active,
.btn-primary[disabled]:active,
fieldset[disabled] .btn-primary:active,
.btn-primary.disabled.active,
.btn-primary[disabled].active,
fieldset[disabled] .btn-primary.active {
background-color: #265a88;
background-image: none;
}
.btn-success {
background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);
background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641));
background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #3e8f3e;
}
.btn-success:hover,
.btn-success:focus {
background-color: #419641;
background-position: 0 -15px;
}
.btn-success:active,
.btn-success.active {
background-color: #419641;
border-color: #3e8f3e;
}
.btn-success.disabled,
.btn-success[disabled],
fieldset[disabled] .btn-success,
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus,
.btn-success.disabled:active,
.btn-success[disabled]:active,
fieldset[disabled] .btn-success:active,
.btn-success.disabled.active,
.btn-success[disabled].active,
fieldset[disabled] .btn-success.active {
background-color: #419641;
background-image: none;
}
.btn-info {
background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2));
background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #28a4c9;
}
.btn-info:hover,
.btn-info:focus {
background-color: #2aabd2;
background-position: 0 -15px;
}
.btn-info:active,
.btn-info.active {
background-color: #2aabd2;
border-color: #28a4c9;
}
.btn-info.disabled,
.btn-info[disabled],
fieldset[disabled] .btn-info,
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus,
.btn-info.disabled:active,
.btn-info[disabled]:active,
fieldset[disabled] .btn-info:active,
.btn-info.disabled.active,
.btn-info[disabled].active,
fieldset[disabled] .btn-info.active {
background-color: #2aabd2;
background-image: none;
}
.btn-warning {
background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316));
background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #e38d13;
}
.btn-warning:hover,
.btn-warning:focus {
background-color: #eb9316;
background-position: 0 -15px;
}
.btn-warning:active,
.btn-warning.active {
background-color: #eb9316;
border-color: #e38d13;
}
.btn-warning.disabled,
.btn-warning[disabled],
fieldset[disabled] .btn-warning,
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus,
.btn-warning.disabled:active,
.btn-warning[disabled]:active,
fieldset[disabled] .btn-warning:active,
.btn-warning.disabled.active,
.btn-warning[disabled].active,
fieldset[disabled] .btn-warning.active {
background-color: #eb9316;
background-image: none;
}
.btn-danger {
background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a));
background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-color: #b92c28;
}
.btn-danger:hover,
.btn-danger:focus {
background-color: #c12e2a;
background-position: 0 -15px;
}
.btn-danger:active,
.btn-danger.active {
background-color: #c12e2a;
border-color: #b92c28;
}
.btn-danger.disabled,
.btn-danger[disabled],
fieldset[disabled] .btn-danger,
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus,
.btn-danger.disabled:active,
.btn-danger[disabled]:active,
fieldset[disabled] .btn-danger:active,
.btn-danger.disabled.active,
.btn-danger[disabled].active,
fieldset[disabled] .btn-danger.active {
background-color: #c12e2a;
background-image: none;
}
.thumbnail,
.img-thumbnail {
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
background-color: #e8e8e8;
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
background-repeat: repeat-x;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
background-color: #2e6da4;
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
background-repeat: repeat-x;
}
.navbar-default {
background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%);
background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8));
background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-radius: 4px;
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075);
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .active > a {
background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);
background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2));
background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);
background-repeat: repeat-x;
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075);
box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075);
}
.navbar-brand,
.navbar-nav > li > a {
text-shadow: 0 1px 0 rgba(255, 255, 255, .25);
}
.navbar-inverse {
background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);
background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222));
background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
background-repeat: repeat-x;
border-radius: 4px;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .active > a {
background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);
background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f));
background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);
background-repeat: repeat-x;
-webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25);
box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25);
}
.navbar-inverse .navbar-brand,
.navbar-inverse .navbar-nav > li > a {
text-shadow: 0 -1px 0 rgba(0, 0, 0, .25);
}
.navbar-static-top,
.navbar-fixed-top,
.navbar-fixed-bottom {
border-radius: 0;
}
@media (max-width: 767px) {
.navbar .navbar-nav .open .dropdown-menu > .active > a,
.navbar .navbar-nav .open .dropdown-menu > .active > a:hover,
.navbar .navbar-nav .open .dropdown-menu > .active > a:focus {
color: #fff;
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
background-repeat: repeat-x;
}
}
.alert {
text-shadow: 0 1px 0 rgba(255, 255, 255, .2);
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05);
}
.alert-success {
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc));
background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
background-repeat: repeat-x;
border-color: #b2dba1;
}
.alert-info {
background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0));
background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);
background-repeat: repeat-x;
border-color: #9acfea;
}
.alert-warning {
background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0));
background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);
background-repeat: repeat-x;
border-color: #f5e79e;
}
.alert-danger {
background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3));
background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
background-repeat: repeat-x;
border-color: #dca7a7;
}
.progress {
background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5));
background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar {
background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090));
background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-success {
background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);
background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44));
background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-info {
background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5));
background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-warning {
background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f));
background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-danger {
background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);
background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c));
background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);
background-repeat: repeat-x;
}
.progress-bar-striped {
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.list-group {
border-radius: 4px;
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
box-shadow: 0 1px 2px rgba(0, 0, 0, .075);
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
text-shadow: 0 -1px 0 #286090;
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a));
background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);
background-repeat: repeat-x;
border-color: #2b669a;
}
.list-group-item.active .badge,
.list-group-item.active:hover .badge,
.list-group-item.active:focus .badge {
text-shadow: none;
}
.panel {
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}
.panel-default > .panel-heading {
background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
background-repeat: repeat-x;
}
.panel-primary > .panel-heading {
background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
background-repeat: repeat-x;
}
.panel-success > .panel-heading {
background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6));
background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);
background-repeat: repeat-x;
}
.panel-info > .panel-heading {
background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3));
background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);
background-repeat: repeat-x;
}
.panel-warning > .panel-heading {
background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc));
background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);
background-repeat: repeat-x;
}
.panel-danger > .panel-heading {
background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc));
background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);
background-repeat: repeat-x;
}
.well {
background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);
background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5));
background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);
background-repeat: repeat-x;
border-color: #dcdcdc;
-webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1);
}
/*# sourceMappingURL=bootstrap-theme.css.map */

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

@ -1,16 +0,0 @@
<%--
Created by IntelliJ IDEA.
User: 耿春莹
Date: 2023/4/8
Time: 16:43
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
</body>
</html>

File diff suppressed because one or more lines are too long

@ -0,0 +1,13 @@
require('../../js/transition.js')
require('../../js/alert.js')
require('../../js/button.js')
require('../../js/carousel.js')
require('../../js/collapse.js')
require('../../js/dropdown.js')
require('../../js/modal.js')
require('../../js/tooltip.js')
require('../../js/popover.js')
require('../../js/scrollspy.js')
require('../../js/tab.js')
require('../../js/affix.js')

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -1,13 +0,0 @@
package com.dao;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
public class UserTest {
@Autowired
private IUserDao userDao;
@Test
public void test01(){
System.out.println(userDao.findById(1));
}
}

@ -1,14 +1,9 @@
driver=com.mysql.jdbc.Driver
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/sp_emp
username=root
password=root
#定义初始连接数
password=123456
initialSize=0
#定义最大连接数
maxActive=20
#定义最大空闲
maxIdle=20
#定义最小空闲
minIdle=1
#定义最长等待时间
maxWait=60000

@ -1,19 +1,19 @@
#定义LOG输出级别
log4j.rootLogger=INFO,Console,File
#定义日志输出目的地为控制台
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
#可以灵活地指定日志输出格式,下面一行是指定具体的格式
log4j.appender.Console.layout = org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n
#文件大小到达指定尺寸的时候产生一个新的文件
log4j.appender.File = org.apache.log4j.RollingFileAppender
#指定输出目录
log4j.appender.File.File = logs/ssm.log
#定义文件最大大小
log4j.appender.File.MaxFileSize = 10MB
# 输出所以日志如果换成DEBUG表示输出DEBUG以上级别日志
0В4
log4j.appender.File.Threshold = ALL
log4j.appender.File.layout = org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n
Loading…
Cancel
Save