action 调用dao中的方法,把add方法写在dao中,然后再配置struts.xml
public class AddAction extends ActionSupport{
private Student student;
private List
public List
return students;
}
public void setStudents(List
this.students = students;
}
public Student getStudent() {
return student;
}
public void setStudent(Student student) {
this.student = student;
}
@Override
public String execute() throws Exception {
Student stu=new Student(student.getSno(),student.getSname(),student.getAge(),student.getSex(),student.getBirthday(),student.getSclass(),student.getAddress());
StudentDAO dao=new StudentDAO();
dao.add(stu);
students=dao.FindAllStudent();
return SUCCESS;
}
}
public class StudentDAO extends HttpServlet{
private Connection connection;
public StudentDAO() {
connection=DBhandler.getConnection();
}
//增加学生信息
public void add(Student s) throws SQLException{
String sql="insert into student values(?,?,?,?,?,?,?)";
PreparedStatement ps=connection.prepareStatement(sql);
ps.setInt(1,s.getSno());
ps.setString(2, s.getSname());
ps.setInt(3, s.getAge());
ps.setString(4, s.getSex());
ps.setString(5, s.getBirthday());
ps.setInt(6, s.getSclass());
ps.setString(7, s.getAddress());
ps.executeUpdate();
ps.close();
}
jsp提交到action的方法,在struts2中的配置如下:
action="ActionName!add"
其中一个按钮的代码如下:
点击“注册”按钮被单击时触发regist函数,该函数的代码如下:
get是默认提交方式,如果不在method方法中声明,表单会议get方式提交到服务器,提交的数据信息会显示在浏览器栏地址栏内,Post方式提交表单后的地址栏不变 。doGet和doPost对应其form的mothod属性Get和Post。Get方式提交来的数据在服务器端用Request.QueryString()来获取,用Post方式提交的数据用Request.Form()来获取,但默认还是可以用request()获得
利用get方法提交的内容不能超过2kb,否则提交会失败,
post无限制。
你form表单的action是你跳转的路径,?jump=add表示你设置一个参数,method是进入的方法。如果你用Servlet的话,可以根据form的method方法进行编写doGet或者doPost方法。方法里面你就可以获取jump参数,判断这个参数然后进入相应的方法。
你用的什么框架SSH吗,要是struts1的话用request.getParmeter("文本框名");即可获取,若是struts2就get,set下你那个变量