Struts2+Maven+表单标签向MySql表插入数据实现简单注册

来源:互联网 发布:qq秀照片秀网络繁忙 编辑:程序博客网 时间:2024/09/21 09:28

创建一个Mysql数据库:StuDB

create database StuDB;--创建数据库create table studentInfo(--创建数据表    stuid int primary key auto_increment,--主键自动增长    stuname varchar(20) not null unique,    stupass varchar(20) not null,    sex varchar(10) not null,    hobby varchar(100),    birthday date,    email varchar(100) );



在Eclipse新建一个RegisterStu项目

在pom.xml中加入依赖:

    <dependency>      <groupId>mysql</groupId>      <artifactId>mysql-connector-java</artifactId>      <version>5.1.22</version>    </dependency>    <dependency>      <groupId>org.apache.struts</groupId>      <artifactId>struts2-core</artifactId>      <version>2.5.12</version>    </dependency>

新建DBCPUtil类 dao

private static Connection conn = null;String url = "jdbc:mysql://localhost:3306/StuDB";String root = "root";String pass = "408817";public DBCPUtil() throws ClassNotFoundException, SQLException {Class.forName("com.mysql.jdbc.Driver");conn = DriverManager.getConnection(url,root,pass);}public static Connection getConn() {return conn;} public static void closeConn() throws SQLException {conn.close();}

新建Students类  action

public class Students extends ActionSupport {private int stuid;private String stuname;private String stupass;private String sex;private String hobby;private String birthday;private String email;public int getStuid() {return stuid;}public void setStuid(int stuid) {this.stuid = stuid;}public String getStuname() {return stuname;}public void setStuname(String stuname) {this.stuname = stuname;}public String getStupass() {return stupass;}public void setStupass(String stupass) {this.stupass = stupass;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public String getHobby() {return hobby;}public void setHobby(String hobby) {this.hobby = hobby;}public String getBirthday() {return birthday;}public void setBirthday(String birthday) {this.birthday = birthday;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}public String execute() throws SQLException {try {new DBCPUtil();} catch (Exception e) {// TODO Auto-generated catch blockreturn INPUT;}//sql语句Connection conn = DBCPUtil.getConn();String mysql = "insert into StuDB.studentInfo(stuname,stupass,sex,hobby,birthday,email) values(?,?,?,?,?,?)";PreparedStatement ps=null;try {ps = conn.prepareStatement(mysql);ps.setString(1, getStuname());ps.setString(2, getStupass());ps.setString(3, getSex());ps.setString(4, getHobby());ps.setString(5, getBirthday());ps.setString(6, getEmail());int count = ps.executeUpdate();return count > 0 ? SUCCESS:INPUT;} catch (SQLException e) {// TODO Auto-generated catch blockreturn INPUT;}finally {DBCPUtil.closeConn();}}

web.xml  添加到<web-app>内

  <filter>  <filter-name>struts2</filter-name>  <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>  </filter>  <filter-mapping>  <filter-name>struts2</filter-name>  <url-pattern>/*</url-pattern>  </filter-mapping>



index.jsp页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@ taglib uri="/struts-tags" prefix="s" %><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>主页</title></head><body><a href="<s:url action="register"></s:url>">注册</a><br/></body></html>

register.jsp页面:  使用表单标签

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><%@ taglib uri="/struts-tags" prefix="s" %><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>注册页面</title></head><body>    <!-- 推荐使用Struts2的标签库 -->    <s:form action="REGIST">        <s:textfield name="stuname" label="用户名" requiredLabel="true" requiredPosition="left"></s:textfield>        <s:password name="stupass" label="密码" requiredLabel="true" requiredPosition="left"></s:password>        <!-- list的取值是一个ONGL表达式,创建了一个Map对象。必须有name -->        <s:radio name="sex" list="#{'male':'男性','female':'女性'}" label="性别" requiredLabel="true" requiredPosition="left"></s:radio>        <!-- list的取值是一个ONGL表达式,创建了一个List对象。必须有name -->        <s:checkboxlist name="hobby" list="{'吃饭','睡觉','学java'}" label="爱好"></s:checkboxlist>        <s:textfield name="birthday" label="出生日期:yyyy-MM-dd"></s:textfield>        <s:textfield name="email" label="邮箱"></s:textfield>        <s:submit value="注册"></s:submit>    </s:form>    <br/></body></html>

再写两个success.jsp成功页面,shibai.jsp失败页面,内容自定


在src/main/resources目录下新建一个struts.xml

<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN""http://struts.apache.org/dtds/struts-2.5.dtd"><struts><constant name="struts-devMode" value="true" /><constant name="struts.action.extension" value="com" /><constant name="struts.enable.DynamicMethodInvocation" value="true" /><!-- 动态方法调用 --><constant name="struts.i18n.reload" value="true" /><!-- 自动装载本地化文件 --><constant name="struts.configuration.xml.reload" value="true" /><!-- 自动装载XML文件 --><package name="web"  extends="struts-default"><action name="register"><result>/register.jsp</result></action><action name="index"><result>/index.jsp</result></action><action name="REGIST" class="com.sve.entity.Students"><result name="success">/success.jsp</result><result name="input">/shibai.jsp</result></action></package></struts>

发布访问:http://localhost:8080/RegisterStu/index.com




刷新数据表:




原创粉丝点击