通过实例跟我学Spring从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
更新时间:2023-08-24 17:46:01 阅读量: 教育文库 文档下载
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
1.1 应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
1、添加一个注册功能的表单页面
(1)
userRegister.jsp
(2)在该页面中添加一个注册表单,最后的页面代码为:
<%@ page contentType="text/html; charset=GBK" %>
<html><head><title>userRegister</title></head>
<body bgcolor="#ffffff">
<form action="/SpringMVCWeb/userRegister.do" method="post" name="UserManageLevel" >
<table class="wd_gray" border="1" align="center" cellspacing="0" width="502" bgcolor="#F0F8FF" >
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
<input name="menuID" type="hidden" value="2">
<tr>
<td width="254"> <div align="right">用户名</div></td>
<td width="238"><input type="text" name="userName"></td>
</tr>
<tr>
<td> <div align="right">用户密码 </div></td>
<td><input type="password" name="userPassword"></td>
</tr>
<tr>
<td> <div align="right">确认密码 </div></td>
<td><input type="password" name="confirmPassWord"></td>
</tr>
<tr>
<td> <div align="right">用户所属的部门 </div></td>
<td><select name="userDepartment">
<option value="信息中心" selected>信息中心</option>
<option value="开发部">开发部</option>
<option value="办公室">办公室</option>
<option value="宣传部">宣传部</option>
</select></td>
</tr>
<tr>
<td> <div align="right">用户的类型</div></td>
<td><select name="userAdminLevel">
<option value="1">管理员</option>
<option value="0" selected>普通用户</option>
<option value="2">超级版主</option>
<option value="3">版主</option>
<option value="4">论坛专家</option>
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
<option value="5">超级会员</option> <option value="6">会员</option>
</select>
</td>
</tr>
<tr>
<td> <div align="right">用户是否具有对部门管理的权限 </div></td>
<td>
<select name="departAdminLevel"> <option value="1">有</option>
<option value="0" selected>无</option>
</select>
</td>
</tr>
<tr>
<td> <div align="right">用户图像 </div></td>
<td>
<select name="userImage" onChange="document.images['headPortrait'].src=options[selectedIndex].value;"> <option value='..\Resource\PersonImage\Chang.gif' selected>Chang.gif</option>
<option
value='..\Resource\PersonImage\LiuMing.gif'>LiuMing.gif</option>
<option
value='..\Resource\PersonImage\Wang.GIF'>Wang.GIF</option>
<option
value='..\Resource\PersonImage\Yang.GIF'>Yang.GIF</option>
<option
value='..\Resource\PersonImage\zhang.GIF'>zhang.GIF</option>
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
</select>
<img src="../Resource/PersonImage/Chang.gif" width="28" height="54" name="headPortrait" alt="person image"></td>
</tr>
<tr>
<td><div align="right">
<input type="submit" name="Submit" value="注册完成">
</div></td>
<td><input type="reset" name="Submit2" value="重新注册"></td> </tr>
</table>
</form>
</body>
</html>
(3)注意其中的“<input type="hidden" name="menuID" value="2"/>”的含义
并且要求在每个表单中加一个下面的标签以区分不同的请求类型。
<input type="hidden" name="menuID" value="2"/>
同时,对用户登录表单也进行修改
<input name="menuID" type="hidden" value="1">
2、修改UserLoginForm类以增加新的属性(此时应该包含登录和注册两个表单的共同数据) String userName=null;
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
String userPassWord=null;
private String confirmPassWord;
private String userDepartment;
private String userAdminLevel;
private String departAdminLevel;
private String userImage;
private String menuID;
然后分别给它们提供 get和set方法。最后的完整的代码如下:
package springwebapp;
public class UserLoginForm {
String userName = null;
String userPassWord = null;
private String confirmPassWord;
private String userDepartment;
private String userAdminLevel;
private String departAdminLevel;
private String userImage;
private String menuID;
public UserLoginForm() {
}
public String getUserName() {
return userName;
}
public String getUserPassWord() {
return userPassWord;
}
public String getConfirmPassWord() {
return confirmPassWord;
}
public String getDepartAdminLevel() {
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
return departAdminLevel;
}
public String getMenuID() {
return menuID;
}
public String getUserAdminLevel() {
return userAdminLevel;
}
public String getUserDepartment() {
return userDepartment;
}
public String getUserImage() {
return userImage;
}
public void setUserPassWord(String userPassWord) {
http://www.77cn.com.cnerPassWord = userPassWord;
}
public void setUserName(String userName) {
http://www.77cn.com.cnerName = userName;
}
public void setUserImage(String userImage) {
http://www.77cn.com.cnerImage = userImage;
}
public void setUserDepartment(String userDepartment) {
http://www.77cn.com.cnerDepartment = userDepartment;
}
public void setUserAdminLevel(String userAdminLevel) {
http://www.77cn.com.cnerAdminLevel = userAdminLevel;
}
public void setMenuID(String menuID) {
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
this.menuID = menuID;
}
public void setDepartAdminLevel(String departAdminLevel) {
this.departAdminLevel = departAdminLevel;
}
public void setConfirmPassWord(String confirmPassWord) {
this.confirmPassWord = confirmPassWord;
}
}
3、对前面的UserInfoVO的VO对象进行修改以增加新的属性
package springwebapp;
public class UserInfoVO {
String userName=null;
String userPassWord=null;
private String userDepartment;
private int userAdminLevel;
private int departAdminLevel;
private String userImage;
private String registerTime;
public UserInfoVO(){
}
public String getUserName() {
return userName;
}
public String getUserPassWord() {
return userPassWord;
}
public int getDepartAdminLevel() {
return departAdminLevel;
}
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
public String getRegisterTime() {
return registerTime;
}
public int getUserAdminLevel() {
return userAdminLevel;
}
public String getUserDepartment() {
return userDepartment;
}
public String getUserImage() {
return userImage;
}
public void setUserName(String userName) {
http://www.77cn.com.cnerName = userName;
}
public void setUserPassWord(String userPassWord) {
http://www.77cn.com.cnerPassWord = userPassWord;
}
public void setUserImage(String userImage) {
http://www.77cn.com.cnerImage = userImage;
}
public void setUserDepartment(String userDepartment) {
http://www.77cn.com.cnerDepartment = userDepartment;
}
public void setUserAdminLevel(int userAdminLevel) {
http://www.77cn.com.cnerAdminLevel = userAdminLevel;
}
public void setRegisterTime(String registerTime) {
this.registerTime = registerTime;
}
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
public void setDepartAdminLevel(int departAdminLevel) {
this.departAdminLevel = departAdminLevel;
}
}
4、修改控制器程序
package springwebapp;
import org.springframework.web.servlet.mvc.Controller;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import http://www.77cn.com.cnmons.logging.Log;
import http://www.77cn.com.cnmons.logging.LogFactory;
import org.springframework.web.servlet.mvc.SimpleFormController;
public class UserLoginController extends SimpleFormController{
protected ModelAndView onSubmit(Object formBean) throws Exception{
UserLoginForm userLoginForm = (UserLoginForm) formBean;
ModelAndView targetModelAndView=null;
switch(Integer.parseInt(userLoginForm.getMenuID())){
case 1: //用户登录
targetModelAndView=doUserLogin(userLoginForm);
break;
case 2: //用户注册
targetModelAndView=doUserRegister(userLoginForm);
break;
}
return targetModelAndView;
}
public ModelAndView doUserRegister(UserLoginForm userLoginForm ){
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
java.util.Date rightNow = new java.util.Date();
String registerTime = rightNow.toLocaleString();
UserInfoVO userInfo = new UserInfoVO();
userInfo.setUserName(userLoginForm.getUserName());
userInfo.setUserPassWord(userLoginForm.getUserPassWord());
userInfo.setUserDepartment( userLoginForm.getUserDepartment()); userInfo.setUserAdminLevel(Integer.parseInt(userLoginForm.getUserAdminLevel()
));
userInfo.setDepartAdminLevel(Integer.parseInt(userLoginForm.getUserAdminLevel
()));
userInfo.setUserImage(userLoginForm.getUserImage());
userInfo.setRegisterTime(registerTime);
boolean okOrNot= userLoginImpleBean.doUserRegister(userInfo);
if(okOrNot){
return new ModelAndView(registerSuccess);
}
else{
return new ModelAndView(registerFailure);
}
}
public ModelAndView doUserLogin(UserLoginForm userLoginForm ){
String userName = userLoginForm.getUserName();
String userPassword = userLoginForm.getUserPassword();
boolean okOrNot= userLoginImpleBean.doUserLogin(userName,userPassword);
if(okOrNot){
return new ModelAndView(loginSuccess);
}
else{
return new ModelAndView(loginFailure);
}
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
private String registerSuccess;
private String registerFailure;
public String getRegisterSuccess() {
return registerSuccess;
}
public void setRegisterSuccess(String registerSuccess) {
this.registerSuccess = registerSuccess;
}
public String getRegisterFailure() {
return registerFailure;
}
public void setRegisterFailure(String registerFailure) {
this.registerFailure = registerFailure;
}
private String loginSuccess;
public void setLoginSuccess(String newLoginSuccess){
this.loginSuccess = newLoginSuccess;
}
public String getLoginSuccess(){
return loginSuccess;
}
private String loginFailure;
public void setLoginFailure(String newLoginFailure){
this.loginFailure = newLoginFailure;
}
public String getLoginFailure(){
return loginFailure;
}
public UserLoginController(){
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
private UserLoginInterface userLoginImpleBean = null;
public void setUserLoginImpleBean(UserLoginInterface newUserLoginImpleBean) { userLoginImpleBean = newUserLoginImpleBean;
}
public UserLoginInterface getUserLoginImpleBean() {
return userLoginImpleBean;
}
}
5、在*.xml配置文件中增加对用户注册的映射
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings"> <props> <prop key="/hello.do">springappController</prop> <prop key="/userlogin.do">userLoginController</prop> <prop key="/userRegister.do">userLoginController</prop> </props> </property> </bean>
6、修改业务处理的实现类以中间对注册的处理
(1)UserLoginInterface.java接口
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
package springwebapp;
public interface UserLoginInterface {
public abstract boolean doUserLogin(UserInfoVO oneUserInfo);
public abstract boolean doUserRegister(UserInfoVO oneUserInfo);
}
(2)UserLoginImple.java类
package springwebapp;
import org.springframework.beans.BeansException;
import org.springframework.jdbc.core.JdbcTemplate;
public class UserLoginImple implements UserLoginInterface{
public UserLoginImple(){
}
public boolean doUserRegister(UserInfoVOBean userInfo ){
return true;
}
public boolean doUserLogin(UserInfoVO oneUserInfo){
boolean okOrNot=false;
String userName=oneUserInfo.getUserName();
String userPassWord=oneUserInfo.getUserPassWord();
if(userName.equals("yang")&&userPassWord.equals("1234"))//实际一个改变为对数据库表的访问
{
okOrNot=true;
}
else{
okOrNot=false;
}
return okOrNot;
}
}
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
7、添加注册成功与失败的页面
(1)
registerSuccess.jsp
<%@ page contentType="text/html; charset=GBK" %>
<html>
<head>
<title>
registerSuccess
</title>
</head>
<body bgcolor="#ffffff">
<h1> 您成功注册为本系统的会员 </h1>
</body>
</html>
(2)
registerFailure.jsp
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
<%@ page contentType="text/html; charset=GBK" %>
<html>
<head>
<title>
registerFailure
</title>
</head>
<body bgcolor="#ffffff">
<h1> 您的注册没有成功 </h1>
</body>
</html>
并且将它们也放到userLogin目录下
8、再修改*.xml文件以增加目标页面的配置
<bean id="userLoginController" class="http://www.77cn.com.cnerLoginController"> <property name="commandClass">
<value>http://www.77cn.com.cnerLoginForm</value>
</property>
<property name="userLoginImpleBean">
<ref bean="userLoginImpleBean"/>
</property> <property name="loginSuccess">
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
<value>userLogin/loginSuccess</value> </property>
<property name="loginFailure">
<value>userLogin/loginFailure</value>
</property>
<property name="registerSuccess">
<value>userLogin/registerSuccess</value>
</property>
<property name="registerFailure">
<value>userLogin/registerFailure</value>
</property>
</bean>
9、测试该用户注册的功能
通过代码实例跟我学Spring框架从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)
由于到目前为止,我们在doUserRegister方法中直接返回为true,因此最后应该出现下面的成功的提示内容






正在阅读:
通过实例跟我学Spring从入门到精通——应用Spring框架实现MVC架构的Web应用实例(用户注册,JBuilder版本)08-24
浅谈固定资产减值准备06-11
中医基础医学理论:五脏之脾09-29
离婚了,夫妻财产如何分配?12-29
陈共财政学(第5版)第十三章05-22
现代管理理论与方法03-07
关于鼓励员工考取职称及资格证书的方案讲述01-18
四年级科学上册第三单元生活中的材料10陶瓷教案青岛版五四制04-28
2012四川省中级会计电算化题库01-03
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 实例
- 应用
- Spring
- 跟我学
- 精通
- 架构
- 框架
- JBuilder
- 入门
- 用户注册
- 通过
- 版本
- 实现
- MVC
- Web
- 安全生产基础知识
- J2015人美版小学五年级上册美术模拟抽测试卷及答案
- 18年6月考试《机电一化系统设计》考核作业(参考)
- 证券法期末论文
- 生产与运作管理考试复习题及参考答案
- 《建筑工程计量与计价》综合练习题及答案
- 江苏省南京市、盐城市2018届高三一模英语试卷(含答案解析)
- 小学六年级地方课程教案
- 常用塑料名称
- 数据仓库
- 2018年中国传感器信号放大器市场分析调查及行业投资前景趋势报告目录
- 2011年设备部工作计划
- 2013年糖精钙市场分析报告
- 社会工作复试自我介绍英文版
- 国际公法02 0004案例讨论题
- 电子级氢氟酸
- 《三角函数的诱导公式》导学案
- 汽车人员管理与团队建设-学员用书
- 如何计算施工工期(建筑工程部分)2010年7月
- 电子商务创业计划书