网上365平台被黑提款-365外网足球-365体育平台网址

网上365平台被黑提款

Struts2 MySQL数据库访问

2025-11-04 23:49:38 作者 admin 阅读 4931
Struts2 MySQL数据库访问

本章将教如何使用Struts 2的简单的步骤来访问数据库。 Struts是一个MVC框架,而不是一个数据库框架,但它提供了极好的支持JPA/ Hibernate集成。我们将看看在的Hibernate集成在后面的章节,但在这一章中,我们将使用纯JDBC来访问数据库。

在这一章中的第一个步骤是设置我们的数据库。我作为我的数据库在这个例子中使用MySQL。在机器上安装MySQL,我创建了一个新的数据库称为“struts_tutorial”。创建了一个表称为 login,填充了一些值。下面是使用的脚本来创建和填充表。

MYSQL数据库默认的用户名“root”和密码为:“root123”

CREATE TABLE `struts_tutorial`.`login` (

`user` VARCHAR( 10 ) NOT NULL ,

`password` VARCHAR( 10 ) NOT NULL ,

`name` VARCHAR( 20 ) NOT NULL ,

PRIMARY KEY ( `user` )

) ENGINE = InnoDB;

INSERT INTO `struts_tutorial`.`login` (`user`, `password`, `name`)

VALUES ('scott', 'navy', 'Scott Burgemott');

下一步是下载 MySQL Connector jar文件,并把这个文件的WEB-INF lib文件夹下。之后,已经做到了这一点,我们现在准备创建的动作类。

创建动作:

动作类对应的数据库表中的列的属性。我们有字符串属性的用户名,密码和名称。在操作方法,我们使用用户和密码参数,以检查用户是否存在,如果存在,我们在下一个画面中显示的用户名。如果用户输入了错误的信息,我们把他们再次到登录屏幕。以下是LoginAction.java文件的内容:

package com.zaixian.struts2;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {

private String user;

private String password;

private String name;

public String execute() {

String ret = ERROR;

Connection conn = null;

try {

String URL = "jdbc:mysql://localhost/struts_tutorial";

Class.forName("com.mysql.jdbc.Driver");

conn = DriverManager.getConnection(URL, "root", "root123");

String sql = "SELECT name FROM login WHERE";

sql+=" user = ? AND password = ?";

PreparedStatement ps = conn.prepareStatement(sql);

ps.setString(1, user);

ps.setString(2, password);

ResultSet rs = ps.executeQuery();

while (rs.next()) {

name = rs.getString(1);

ret = SUCCESS;

}

} catch (Exception e) {

ret = ERROR;

} finally {

if (conn != null) {

try {

conn.close();

} catch (Exception e) {

}

}

}

return ret;

}

public String getUser() {

return user;

}

public void setUser(String user) {

this.user = user;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

创建页面:

现在,让我们创建一个JSP文件index.jsp的收集用户名和密码。此用户名和密码对数据库进行检查。

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"

pageEncoding="ISO-8859-1"%>

<%@ taglib prefix="s" uri="/struts-tags"%>

"http://www.w3.org/TR/html4/loose.dtd">

Login

User:

Password:

创建视图:

现在,让我们一起创造的success.jsp文件将被调用的情况下动作返回SUCCESS,但在发生错误ERROR 的情况下,我们将有另一种观点认为文件是从操作返回。

<%@ page contentType="text/html; charset=UTF-8" %>

<%@ taglib prefix="s" uri="/struts-tags" %>

Successful Login

Hello World,

下面将是在一个错误的情况下,从动作返回视图文件error.jsp。

<%@ page contentType="text/html; charset=UTF-8" %>

<%@ taglib prefix="s" uri="/struts-tags" %>

Invalid User Name or Password

Wrong user name or password provided.

配置文件:

最后,让我们一起使用struts.xml 配置文件如下:

"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"

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

class="com.zaixian.struts2.LoginAction"

method="execute">

/success.jsp

/error.jsp

以下是web.xml文件中的内容:

xmlns="http://java.sun.com/xml/ns/javaee"

xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee

http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"

id="WebApp_ID" version="3.0">

Struts 2

index.jsp

struts2

org.apache.struts2.dispatcher.FilterDispatcher

struts2

/*

现在,右键点击项目名称,并单击Export > WAR File创建一个WAR文件。然后部署此WAR在Tomcat 的 webapps目录下。最后,启动Tomcat服务器和尝试访问URL http://localhost:8080/HelloWorldStruts2/index.jsp。这会给以下画面:

输入了错误的用户名和密码。应该看到页面如下:

现在进入scott 用户名和密码为 navy 。应该看到页面如下:

上一篇:

Struts2 文件上传

下一篇:

Struts2快速入门

相关文章