【Little_things】jsp+MySql简单的数据录入功能
这学期开设了JSP Web技术课程,上机的时候有一个简单的签到系统,用的就是JSP+数据库。其原理就是事先在数据库中加入了本班所有同学的学号和姓名,然后根据输入的学号和机号更新学号所在行的数据。
由于班级人太多我就没录入数据,只做了根据学号和机号将数据插入到数据库的功能。
首先装MySql,期间会要求输入两次root用户的密码
sudo apt-get install mysql-server
进入MySql下创建数据库和表
$ mysql -u root -p
Enter password:
MySQL常用命令
create database name; 创建数据库
use databasename; 选择数据库
create table 表名(列名 类型(长度),列名 类型(长度) ...)
drop database name 直接删除数据库,不提醒
drop table 表名——数据表删除
show tables; 显示表
describe tablename; 表的详细描述
delete from 表名; 清空表
insert into 表名(列名 类型(长度),列名 类型(长度) ...) values(..,..,..)
update 表名 set 字段名=字段值 where 条件表达式
创建一个test数据库再创建一个
create database test;
use test;
create table stu(name varchar(20),sex varchar(10),no varchar(10),ip varchar(20));
然后就可以到jsp里链接数据库进行操作了
jsp代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ZTC</title>
</head>
<body>
<%!ResultSet rs; %>
<%
Class.forName("com.mysql.jdbc.Driver"); //驱动
String url="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8";//数据库地址和编码
Connection dbcon=DriverManager.getConnection(url, "root", "1234"); //创建链接
request.setCharacterEncoding("UTF-8"); //设置编码
String sql="insert into stu(name,no,ip) values(\""+request.getParameter("name")+"\",\""+request.getParameter("no")+"\",\""+request.getRemoteAddr()+"\");";
Statement stat=dbcon.createStatement();
if(request.getParameter("name")!=null&&request.getParameter("no")!=null&&request.getParameter("name")!=""&&request.getParameter("name")!="")
stat.executeUpdate(sql);
out.println(sql);
rs=stat.executeQuery("select*from stu");
%>
<center>
<form action="index.jsp" method="post">
<table><tr><td colspan="2" align="center">User Login!</td></tr>
<tr><td>学 号:</td><td><input type="text" name="name"></td></tr>
<tr><td>机 号:</td><td><input type="text" name="no"></td></tr>
<tr><td colspan="2" align="center"><input type="submit" value="登录"></td></tr>
</table>
</form>
<table bgcolor=lightgrey>
<tr><td colspan="2" align="center">全部在线学生</td></tr>
<tr><td>学号</td><td>性别</td><td>机号</td><td>IP</td></tr>
<%
while(rs.next())
{
%>
<tr bgcolor=cyan>
<td><%=rs.getString(1)%></td>
<td><%=rs.getString(2)%></td>
<td><%=rs.getString(3)%></td>
<td><%=rs.getString(4)%></td>
<td><a href=<%=rs.getString(4)%>:8080/aa>浏览学生页面</a></td>
</tr>
<%
}
//response.setHeader("refresh","2") ;
%>
</center>
</body>
</html>