struts mysql,Struts访问MySQL例子

按照如下步骤连接MySQL数据库 :

第一步 : 创建struts.xml并向其中添加如下xml代码 :

Xml代码

?>

/p>

"-//Apache Software Foundation//DTD Struts

Configuration 2.0//EN"

"http://struts.apache.org/dtds/struts-2.0.dtd">

name="struts.enable.DynamicMethodInvocation"

value="false" />

value="true" />

file="struts-default.xml"/>

name="roseindia" namespace="/roseindia"

extends="struts-default">

name="insert">

/pages/insertData.jsp

class="net.roseindia.insert">

name="error">/pages/insertData.jsp

/pages/insertSuccess.jsp

?>

/p>

"-//Apache Software Foundation//DTD

Struts

Configuration 2.0//EN"

"http://struts.apache.org/dtds/struts-2.0.dtd">

name="struts.enable.DynamicMethodInvocation"

value="false" />

value="true" />

file="struts-default.xml"/>

name="roseindia" namespace="/roseindia"

extends="struts-default">

name="insert">

/pages/insertData.jsp

class="net.roseindia.insert">

name="error">/pages/insertData.jsp

/pages/insertSuccess.jsp

第二步 : 创建一个JSP输入表单 :

insertData.jsp

Html代码

%>

Struts 2 Insert Data

Application!

" rel="stylesheet"

type="text/css"/>

validate="true">

Please enter

label="Password"/>

align="center"/>

%>

Struts 2 Insert Data

Application!

" rel="stylesheet"

type="text/css"/>

validate="true">

Please enter

label="Password"/>

align="center"/>

第三步 : 创建一个Action类.

首先通过MySQL驱动的帮助("org.gjt.mm.mysql.Driver")建立一个MySQL数据库连接.现在,在MySQL数据库中创建一个账户以连接数据库.创建连接后,你可以向MySQL数据库的表中检索,添加,更新数据.

下面的Action类通过方法适当的类型的帮助和API接口建立了与MySQL数据库的连接.如果建立了连接输入的数据会添加到MySQL数据库表中否则显示错误信息.

insert.java

Java代码

package net.roseindia;

import com.opensymphony.xwork2.ActionSupport;

import java.util.Date;

import java.sql.*;

public  class insert

extends ActionSupport {

public String execute()

throws Exception {

String

url = "jdbc:mysql://localhost:3306/";

String

dbName = "taskproject";

String

driverName = "org.gjt.mm.mysql.Driver";

String

userName = "root";

String

password = "root";

Connection con=null;

Statement stmt=null;

try{

Class.forName(driverName).newInstance();

con=DriverManager.getConnection(url+dbName,

userName,

password);

stmt=con.createStatement();

}

catch(Exception e){

System.out.println(e.getMessage());

}

String

uname=getUsername();

String

pws=getPassword();

stmt =

con.createStatement();

int val =

stmt.executeUpdate("INSERT employee VALUES

('"+uname+"','"+pws+"')");

if(val

== 0){

return ERROR;

}

else{

return SUCCESS;

}

}

// ---- Username property

----

private

String username = null;

public

String getUsername() {

return username;

}

public

void setUsername(String value) {

username = value;

}

// ----

Username property ----

private

String password = null;

public

String getPassword() {

return password;

}

public

void setPassword(String value) {

password = value;

}

}

package net.roseindia;

import com.opensymphony.xwork2.ActionSupport;

import java.util.Date;

import java.sql.*;

public  class insert

extends ActionSupport {

public String execute()

throws Exception {

String

url = "jdbc:mysql://localhost:3306/";

String

dbName = "taskproject";

String

driverName = "org.gjt.mm.mysql.Driver";

String

userName = "root";

String

password = "root";

Connection con=null;

Statement stmt=null;

try{

Class.forName(driverName).newInstance();

con=DriverManager.getConnection(url+dbName,

userName,

password);

stmt=con.createStatement();

}

catch(Exception e){

System.out.println(e.getMessage());

}

String

uname=getUsername();

String

pws=getPassword();

stmt =

con.createStatement();

int val =

stmt.executeUpdate("INSERT employee VALUES

('"+uname+"','"+pws+"')");

if(val

== 0){

return ERROR;

}

else{

return SUCCESS;

}

}

// ---- Username property

----

private

String username = null;

public

String getUsername() {

return username;

}

public

void setUsername(String value) {

username = value;

}

// ----

Username property ----

private

String password = null;

public

String getPassword() {

return password;

}

public

void setPassword(String value) {

password = value;

}

}

代码的描述 :

Connection :

这是java.sql包中的一个接口,通过指定的数据库像MySQL, Ms-Access,

Oracle等和java文件建立连接.SQL语句执行于Connection接口的上下文中.

Class.forName(String driver):

该方法是static的.它试图动态加载类并返回类实例.当它匹配类的指定string时,它获得String类型值(driver).

DriverManager:

它是java.sql包中的一个类,管理一系列JDBC的驱动.每个驱动都通过该类注册.

getConnection(String url, String userName, String

password):

该方法通过指定的数据库url建立数据库连接.它需要三个String类型的参数如 :

url: -

需要连接的数据库url

userName: - 数据库用户名

password: - 数据库密码

con.close():

该方法用来断开连接.它释放了数据库占用的所有资源.

第四步 : 创建验证器.

验证文件的格式应该是-validation.xml或--validation.xml.

insert-validation.xml

Xml代码

encoding="UTF-8"?>

/p>

"-//OpenSymphony Group//XWork Validator

1.0.2//EN"

"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">

name="username">

type="requiredstring">

name="trim">true

User name

is required

name="password">

type="requiredstring">

name="trim">true

Password

is required

encoding="UTF-8"?>

/p>

PUBLIC

"-//OpenSymphony Group//XWork Validator

1.0.2//EN"

"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">

name="username">

type="requiredstring">

name="trim">true

User name

is required

name="password">

type="requiredstring">

name="trim">true

Password

is required

当在文本域中输入正确的数据后,用户将在insertSuccess.jsp页面得到输入的数据.

insertSuccess.jsp

Html代码

Inserted Data

List

Inserted Data:

User name =

%>!

Password =

%>!

Inserted Data

List

Inserted Data:

User name =

%>!

Password =

%>!

输出 :

当程序执行时用户得到如下页面 :

不填写任何字段并点击"Save"按钮,你将得到如下输出页面 :

如果你只输入"Password"并不输入其它字段并点击"Save"按钮,你将得到该输出页面 :

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值