1、建立一个JavaWeb应用
2、拷贝一下内容到您应用中:美工MM给你准备好的
3、搭建Struts2的开发环境
a、拷贝必要的jar包(图中黄色框框) 和 与数据库操作有关的jar包与配置文件(图中绿色框框)
b、配置Struts2核心过滤器
web.xml
c、在src目录下建立struts.xml配置文件
4、具体开发
4.1、数据模型
a、建立表格
代码语言:javascript复制create database day28;
use day28;
#用户表
CREATE TABLE S_User(
userID INT NOT NULL AUTO_INCREMENT, #主键ID
userName VARCHAR(50) NULL, #用户姓名
loginName VARCHAR(50) NULL, #登录名
loginPwd VARCHAR(50) NULL, #密码#
gender VARCHAR(10) NULL, #性别(例如:男,女)
birthday VARCHAR(50) NULL, #出生日期
education VARCHAR(20) NULL, #学历(例如:研究生、本科、专科、高中)
telephone VARCHAR(50) NULL, #电话
hobby VARCHAR(20) NULL, #兴趣爱好(例如:体育、旅游、逛街)
path VARCHAR(500) NULL, #上传路径(path路径)
filename VARCHAR(100) NULL, #上传文件名称(文件名)
remark VARCHAR(500) NULL, #备注
PRIMARY KEY (userID)
);
b、初始化一条数据
代码语言:javascript复制INSERT INTO s_user (userID,userName,loginName,loginPwd) VALUES (1,'超级管理员','admin','admin')
c、创建对应的JavaBean类
代码语言:javascript复制package com.itheima.domain;
import java.io.Serializable;
public class User implements Serializable {
private Integer userID;
private String userName;
private String loginName;
private String loginPwd;
private String gender;
private String birthday;
private String education;
private String telephone;
private String hobby;
private String path;
private String filename;
private String remark;
public Integer getUserID() {
return userID;
}
public void setUserID(Integer userID) {
this.userID = userID;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getLoginName() {
return loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
public String getLoginPwd() {
return loginPwd;
}
public void setLoginPwd(String loginPwd) {
this.loginPwd = loginPwd;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getEducation() {
return education;
}
public void setEducation(String education) {
this.education = education;
}
public String getTelephone() {
return telephone;
}
public void setTelephone(String telephone) {
this.telephone = telephone;
}
public String getHobby() {
return hobby;
}
public void setHobby(String hobby) {
this.hobby = hobby;
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
public String getFilename() {
return filename;
}
public void setFilename(String filename) {
this.filename = filename;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}
4.2、用户登陆
a、登陆页面
b、登陆成功:转向/login/home.jsp
c、struts.xml配置文件
d、动作类
e、业务和Dao实现
写DAO具体实现前:先导入DBUtilS和数据库连接驱动的jar包、JNDIUtil的工具类和相对应的配置文件context.xml
context.xml文件内容如下:
f、配置Spring容器,管理业务和dao
后面学完后再补上撒!
g、更改JSP页面:login.jsp
更改默认展现模板主题
把login.jsp中的标签换成struts2的标签以及登陆失败提示
5、更改欢迎信息
6、添加用户
/user/add.jsp
a、把add.jsp的标签全部换成struts2的标签
b、struts.xml
c、动作类
7、查询所有的用户
/user/list.jsp
a、修改左侧菜单的链接地址
b、struts.xml配置文件
c、动作类
d、修改list.jsp的显示结果
e、查询结果如下图所示
8、删除一条记录
a、list.jsp
b、struts.xml配置文件
c、动作类
9、查看用户
显示查看结果/user/view.jsp
a、list.jsp
b、struts.xml
c、动作类
d、view.jsp
e、效果如下图所示
10、查看用户信息时的文件下载
a、view.jsp
b、动作类
c、struts.xml配置文件
11、用户修改:显示内容
a、list.jsp
b、struts.xml
c、动作类
d、edit.jsp
该截图与add.jsp的相同。
但是会有问题,在用户上传简历的那部分:
如果用户第一次没有上传简历,那么用户修改的时候上传简历,没有问题;
如果用户第一次已经上传过简历,修改的时候不上传新的简历,此时edit.jsp页面中并没有对应的下载的字段信息。再保存的话,这两个字段的信息就为null了。
12、用户修改:保存修改后的数据
a、struts.xml
b、动作类
c、再次修改edit.jsp
13、按条件查询
什么条件都不选就是忽略条件
a、list.jsp
b、struts.xml
c、动作类
d、dao
14、自定义登陆检查拦截器
a、CheckLoginInterceptor.java
b、struts.xml