您的位置:首页 > 其它

SSM框架下的用户登录系统,并实现增删改

2017-12-19 20:52 651 查看
实现功能: 
(1)连接数据库,实现数据库中已存用户的成功登陆,或向数据库中添加未有的用户 
(2)在界面中显示数据库中所有人名单 
(3)管理员可以像数据库中添加用户,删除用户,修改用户 
(4)修改用户实现表单的预读 
(5)添加用户实现数据验证,并显示错误信息

相关实现: 

(1)整体框架: 



(2)web,xml配置文件
<?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_2_5.xsd" id="WebApp_ID" version="2.5">

<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>

</web-app>
1
2
3
4
5
6
7
8
9
10
11
12
13

(3)spring-servlet.xml文件
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation=" http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

<!-- 打开基于注解的spring handler mapping -->
<mvc:annotation-driven />
<!-- 配置spring自动扫描所有的controller -->
<context:component-scan base-package="com.controller"></context:component-scan>

<!-- 配置spring mvc controller和view的映射关系 以及告知spring要使用jstl -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>

<!-- spring配置全局异常的处理 -->
<bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
<property name="exceptionMappings">
<props>
<prop key="java.lang.RuntimeException">error</prop>
</props>
</property>
</bean>

<!-- 配置spring文件上传的 -->
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- one of the properties available; the maximum file size in bytes -->
<property name="maxUploadSize" value="20000000"/>
</bean>

<!-- spring上配置mybatis的集成 -->
<!-- 配置加载数据连接资源文件的配置,把数据库连接数据抽取到一个properties资源文件中方便管理 -->
<context:property-placeholder location="/WEB-INF/assets/jdbc.properties"/>

<!-- 配置数据源   dbcp数据库连接池  可以配置初始连接数量,最大连接数量等等参数-->
<bean id="dataSource" class="org.apache.tomcat.dbcp.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<!-- 初始化连接大小 -->
<property name="initialSize" value="${jdbc.initialSize}"></property>
<!-- 连接池最大数量 -->
<property name="maxActive" value="${jdbc.maxActive}"></property>
</bean>

<!-- spring和MyBatis整合,mybatis配置映射文件 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 自动扫描mapping.xml文件 -->
<property name="mapperLocations" value="classpath:com/mapping/*.xml"></property>
</bean>

<!-- (事务管理)transaction manager, use JtaTransactionManager for global tx -->
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>

<!-- DAO接口所在包名,Spring会自动查找其下的类 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.dao" />
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>

<!-- spring搜索service服务类的包路径 -->
<context:component-scan base-package="com.service.impl"></context:component-scan>
<mvc:resources mapping="/resource/**" loca
de18
tion="/resource/" />
</beans>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80

(4)添加用户中的数据验证 

UserController:
@RequestMapping(value={"/add"}, method=RequestMethod.POST)
public String add(@Validated User user, BindingResult result){
//jsr303数据验证的结果必须放在被验证对象紧跟的后面,中间不能添加额外的参数
if(result.hasErrors())
{
return "user/add";
}
if(!userService.saveUser(user)){
throw new RuntimeException("xxxxxxx");
}
return "redirect:/user/users";
}
1
2
3
4
5
6
7
8
9
10
11
12

实现:(当添加的部分不合法时,会有相应的报错) 



(5)修改用户时表单的预填 

jsp页面:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<div align="center">
${user.name }

<fm:form method="post" modelAttribute="user">
name:<fm:input path="name" /><fm:errors path="name" /><br/>
pwd:<fm:input path="pwd" /><fm:errors path="pwd" /><br/>
phone:<fm:input path="phone" /><fm:errors path="phone" /><br/>
email:<fm:input path="email" /><fm:errors path="email" /><br/>
<input type="submit" value="修改">
</fm:form>
1
2
3
4
5
6
7
8
9
10
11
12
13
14

实现:(修改某用户时,相应的信息预填在相应的框中) 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: