jsp连接数据库(maria)实现操作固定写法

本文以留言板为例,主要用来记录以及为后期快速开发做准备。
这种最好用两个jsp来实现,思路比较清晰,不容易混淆,更容易去找问题。前端页面部分以message.jsp为例,后台处理部分(数据库操作)以sql为例。
一、 message部分
<%@page import="java.text.SimpleDateFormat" %>//时间格式设置包
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%> //数据库操作包
<%
Class.forName("org.mariadb.jdbc.Driver"); //maria数据库注册JDBC驱动//Class.forName("com.mysql.jdbc.Driver");//mysql数据库注册JDBC驱动
Connection conn = DriverManager.getConnection("jdbc:mariadb://localhost:3306/messageboard", "bonly", "123456");
// DriverManager.getConnection("jdbc:mysql://localhost:3306/数据库名", "数据库用户名", "对应数据局库用户密码");

Statement stmt = conn.createStatement();//执行更新数据库
String sql = "select * from messageboard";//这里是数据库表名
ResultSet rs = stmt.executeQuery(sql);
SimpleDateFormat sdf = new SimpleDateFormat();
sdf.applyPattern("yyyy-MM-dd HH:mm:ss");//时间按照这样的格式显示

%>

留言板

留言板

//类型为隐藏,传值,有其他的需要传值,在用另一个form表单
    <% while (rs.next()) { int id = rs.getInt("id");//转换成整形 String message = rs.getString("message");//从字符串中获取文本 long time = rs.getInt("time") * 1000L;//换算成毫秒,方便计算机显示 String username = rs.getString("username"); String ip = rs.getString("ip"); %>
  • 来自<%= ip%>的 <%=username%> 在<%=sdf.format(time)%>时说到:删除
    <%=message%>
  • <% } %>
</body>

二、 sql部分

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="java.sql.*" %>
<%
request.setCharacterEncoding("utf-8");
Class.forName("org.mariadb.jdbc.Driver");//圣母数据库注册JDBC驱动
//Class.forName("com.mysql.jdbc.Driver");//数据库注册JDBC驱动
Connection conn = DriverManager.getConnection("jdbc:mariadb://localhost:3306/messageboard", "bonly", "123456");//连接数据库
Statement stmt = conn.createStatement();//声明语句,准备工作,创建数据库操作声明,为后面执行操作数据库做准备
String act = request.getParameter("act");//接受得到参数
if (act.equals("insert")) {
String message = request.getParameter("message");
String username = request.getParameter("username");
String ip = request.getRemoteAddr();//获取远程ip地址
int time = (int) (System.currentTimeMillis() / 1000);//换算成秒,默认输出的是毫秒
String sql = "insert into messageboard (message,username,ip,time) values('" + message + "','" + username + "','" + ip + "','" + time + "')";
out.println(sql);
try {
stmt.executeUpdate(sql);
out.println("");
} catch (SQLException e) {
out.print(e.toString());//打印错误
out.println("");
}
} else if (act.equals("delete")) {

    int id = Integer.parseInt(request.getParameter("id"));
    String sql = "delete from messageboard where id=" + id;
    stmt.executeUpdate(sql);
    out.println("<script>alert('删除成功,点击返回');document.location='message.jsp'</script>");
}
stmt.close();
conn.close();

%>

原文地址:https://www.cnblogs.com/bonly-ge/p/6950530.html