Struts框架是一个基于MVC模式的Java EE Web应用程序开发框架,它简化了开发过程,提高了系统的可维护性和可扩展性。在Struts框架中,我们通常通过Action类处理用户提交的请求,而Action类又通常需要从数据库中读取或写入数据。本文将以一个简单的实例来介绍如何使用Struts框架连接数据库。
实例说明
假设我们要开发一个简单的学生成绩管理系统,其主要功能包括添加学生、删除学生和查询学生成绩。我们的数据库包含一个名为Students的表,表结构如下:
+—-+——–+——+——-+
| Id | Name | Age | Score |
+—-+——–+——+——-+
| 1 | 张三 | 18 | 90 |
| 2 | 李四 | 19 | 85 |
| 3 | 王五 | 20 | 95 |
+—-+——–+——+——-+
其中,Id为自增长的主键,Name为学生姓名,Age为学生年龄,Score为学生分数。
步骤一:建立项目
我们需要在Eclipse中建立一个Dynamic Web Project项目。在项目中,我们需要添加如下的jar包:commons-logging.jar、commons-lang.jar、commons-fileupload.jar、commons-io.jar、struts.jar、mysql-connector-java.jar。
步骤二:建立Action类
在建立Action类之前,我们需要先创建数据库连接。在本实例中,我们使用MySQL数据库,其连接字符串为“jdbc:mysql://localhost:3306/Student”,其中Student为数据库的名称。我们可以通过如下的代码来创建与数据库的连接:
public class DBUtil {
private static String jdbcUrl = “jdbc:mysql://localhost:3306/Student”;
private static String jdbcUser = “root”;
private static String jdbcPassword = “123456”;
public static Connection getConnection() {
Connection conn = null;
try {
Class.forName(“com.mysql.jdbc.Driver”);
conn = DriverManager.getConnection(jdbcUrl, jdbcUser, jdbcPassword);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
}
接下来,我们来创建Action类。在本实例中,我们需要如下的Action类:AddStudentAction、DeleteStudentAction和QueryStudentAction。下面我们以AddStudentAction类为例来说明。
我们需要在struts.xml配置文件中对Action类进行配置。在struts.xml中加入如下的代码段:
success.jsp
error.jsp
其中,name为Action类的名字,class为Action类的实际Java类名。result用于指定Action类执行成功或失败之后展示的jsp页面。
接下来,我们来编辑AddStudentAction类。在类的开头,我们需要导入所需要的类:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
在类中,我们需要定义如下的变量:
private String name;
private String age;
private String score;
这些变量的作用是为接收用户提交的表单数据。接下来,我们需要重写execute()方法:
public String execute() throws Exception {
HttpServletRequest request = ServletActionContext.getRequest();
HttpServletResponse response = ServletActionContext.getResponse();
Connection conn = DBUtil.getConnection();
PreparedStatement pstmt = null;
String sql = “INSERT INTO Students(Name, Age, Score) VALUES (?, ?, ?)”;
try {
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setInt(2, Integer.valueOf(age));
pstmt.setInt(3, Integer.valueOf(score));
pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
return “error”;
} finally {
try {
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
return “success”;
}
在重写的execute()方法中,我们首先获取request和response对象,然后通过DBUtil.getConnection()方法获取数据库连接。接下来,我们使用PreparedStatement对象执行SQL语句将表单数据添加到数据库中,如果执行失败,则返回error,否则返回success。
步骤三:建立jsp页面
我们需要建立如下的jsp页面:add_student.jsp(用于添加学生信息)、delete_student.jsp(用于删除学生信息)和query_student.jsp(用于查询学生信息)。这些页面通常包含表单,用户可以在表单中输入学生姓名、年龄和分数等信息,然后通过Action类提交给服务器进行处理。
下面我们以add_student.jsp为例进行说明。在P页面中,我们需要添加如下的代码:
姓名: | |
年龄: | |
分数: | |
其中,action属性为Action类的名称。表单提交后,服务器将自动调用Action类的execute()方法进行处理。
步骤四:运行实例
在项目中,我们以tomcat服务器运行项目,并访问http://localhost:8080/student/add_student.jsp页面。输入学生信息并点击“添加”按钮,即可将学生信息添加到数据库中。在delete_student.jsp页面中,我们可以通过web框架调用DeleteStudentAction类,从而实现删除学生信息的功能。同样的,在query_student.jsp页面中,我们可以通过web框架调用QueryStudentAction类,从而实现查询学生信息的功能。
使用Struts框架可以简化Java EE Web应用程序的开发过程,提高系统的可维护性和可扩展性。在本文中,我们通过一个简单的实例介绍了如何使用Struts框架连接数据库。希望本文能对读者在学习Struts框架时有所帮助。
相关问题拓展阅读:
求一份完整的Struts实现将excel导入mysql数据库功能的代码
SQL
腊汪老
INSERT INTO student(sid,sname,address,phone)
VALUES (#sid#,#sname#,#address#,#phone#)
DAO
public void insert(Student s) throws SQLException {
sqlMapClient.insert(“insert”,s);
}
service:
public void excel2db(String file) throws SQLException, FileNotFoundException, IOException 陵带{
Student s = new Student();
HSSFWorkbook workbook;
workbook = new HSSFWorkbook(new FileInputStream(file));
HSSFSheet sheet = workbook.getSheet(“sheet1”);
int rows = sheet.getPhysicalNumberOfRows();
//行索引从0开始,之一行(索引为0)为标题,不写入数据库,从第二行开始获取数据
for (int r = 1; r
Struts2实现数据库的增删查改 框架
struts与数据库的增删查改没关系,操作数据库你可以用hibernate或者jdbc
struts实例 数据库的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于struts实例 数据库,使用Struts框架连接数据库的实例,求一份完整的Struts实现将excel导入mysql数据库功能的代码,Struts2实现数据库的增删查改 框架的信息别忘了在本站进行查找喔。
来源地址:使用Struts框架连接数据库的实例 (struts实例 数据库)
转载声明:本站文章若无特别说明,皆为原创,转载请注明来源:www.88531.cn资享网,谢谢!^^