主要代码:
======================================
StudentDao.java
package dao;
import java.util.ArrayList;
import java.util.List;
import javax.sql.DataSource;
import org.springframework.jdbc.core.JdbcTemplate;
//访问数据库
public class StudentDao implements IStudentDao{
private DataSource dataSource;
public DataSource getDataSource() {
return dataSource;
}
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
}
public List queryStuByName(String sname){
String sql = "SELECT 学号,姓名,性别,出生年月,家庭住址 FROM 学籍 WHERE 姓名 LIKE '%" + sname + "%'";
JdbcTemplate jt = new JdbcTemplate(dataSource);
List stus = jt.queryForList(sql);//stus内放的是什么内容?每一个学生都是一个元素,放入HashMap,列和值对应,List内存的是HashMap
return stus;
}
}
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package prj24_1.action;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import prj24_1.form.QueryForm;
import dao.IStudentDao;
public class QueryAction extends Action {
private IStudentDao sdao;
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
QueryForm queryForm = (QueryForm) form;// TODO Auto-generated method stub
String sname = queryForm.getSname();
List stus = sdao.queryStuByName(sname);
request.setAttribute("stus", stus);
return new ActionForward("/queryResult.jsp");
}
public IStudentDao getSdao() {
return sdao;
}
public void setSdao(IStudentDao sdao) {
this.sdao = sdao;
}
}
=============================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<data-sources />
<form-beans >
<form-bean name="queryForm" type="prj24_1.form.QueryForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings >
<action
attribute="queryForm"
input="/query.jsp"
name="queryForm"
path="/query"
scope="request"
type="org.springframework.web.struts.DelegatingActionProxy" />
</action-mappings>
<message-resources parameter="prj24_1.ApplicationResources" />
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
<set-property property="contextConfigLocation"
value="/WEB-INF/applicationContext.xml" />
</plug-in>
</struts-config>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="sdao" class="dao.StudentDao">
<property name="dataSource">
<ref local="dataSource"/>
</property>
</bean>
<bean name="/query" class="prj24_1.action.QueryAction">
<property name="sdao">
<ref local="sdao"/>
</property>
</bean>
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@localhost:1521:SCHOOL</value>
</property>
<property name="username">
<value>scott</value>
</property>
<property name="password">
<value>tiger</value>
</property>
</bean></beans>
<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic"%>
<jsp:directive.page import="po.Student;"/>
<!DOCTYPE HTML PUBLIC "-//W 3C //DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'queryForm.jsp' starting page</title>
</head>
<body>
显示结果. <br>
<table bgcolor="#ff80ff">
<tr>
<td>学号</td>
<td>姓名</td>
<td>性别</td>
<td>出生年月</td>
<td>家庭住址</td>
</tr>
<logic:iterate id="stu" name="stus">
<tr>
<logic:iterate id="content" name="stu">
<td><bean:write name="content" property="value"/></td>
</logic:iterate>
</tr>
</logic:iterate>
</table>
</body>
</html>