1、form表单值的获取
input2.jsp
<%--
Created by IntelliJ IDEA.
User: 蔡依婷
Date: 2024/4/8
Time: 15:49
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<form action="output2.jsp" method="post">
<label for="sss">用户名:</label>
<input type="text" name="username" id="sss"><br>
<label for="ccc">密码:</label>
<input type="password" name="password" id="ccc"><br>
性别:
<input type="radio" name="gender" value="男" id="male">
<label for="male">男</label>
<input type="radio" name="gender" value="女" id="female">
<label for="female">女</label>
<br>
爱好:
<input type="checkbox" name="hobby" value="旅游">旅游
<input type="checkbox" name="hobby" value="电影">电影
<input type="checkbox" name="hobby" value="游戏">游戏
<input type="checkbox" name="hobby" value="音乐">音乐
<br>
城市:
<select name="city">
<option value="beijing">北京</option>
<option value="shanghai">上海</option>
<option value="guangzhou">广州</option>
<option value="wuhan">武汉</option>
</select>
<br>
<br>
<input type="submit" value="注册">
<input type="reset" value="重置">
</form>
</body>
</html>
output.jsp
<%--
Created by IntelliJ IDEA.
User: 蔡依婷
Date: 2024/4/8
Time: 19:46
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<ul style="list-style:none;line-height:30px">
<li>
输入用户名为:<%=new String(request.getParameter("username").getBytes("ISO8859_1"),"UTF-8")%>
</li>
<li>
密码为:<%=new String(request.getParameter("password").getBytes("ISO8859_1"),"UTF-8")%>
</li>
<li>
选择性别为:<%=new String(request.getParameter("gender").getBytes("ISO8859_1"),"UTF-8")%>
</li>
<li>
选择的个人爱好为:
<%
String[] like=request.getParameterValues("hobby");
for(int i=0;i<like.length;i++){
%>
<%=new String(like[i].getBytes("ISO8859_1"),"UTF-8")+" "%>
<%}%>
</li>
<li>
选择所在城市:<%=new String(request.getParameter("city").getBytes("ISO8859_1"),"UTF-8")%>
</li>
</ul>
</body>
</html>
运行input2.jsp,得到以下结果,输入信息,页面自动跳转到output2.jsp
2、mysql数据库及表的建立(参见视频)
2.1配置好相关环境变量
在电脑高级系统设置中新增环境变量
2.2验证是否成功添加
打开电脑 命令提示符,选择以管理员身份运行,输入mysql
2.3初始化MYSQL
接着输入mysqld --initialize-insecure后,继续输入mysqld -install(注意:这里有空格且不能省略)
2.4启动并登录MYSQL
输入net start mysql,然后输入mysql -uroot -p+密码,这里我是第二次登录,密码之前已经设置好了
2.5建立navcat与MySQL的连接并建立数据库及表
安装完成navcat
点击连接,选择和mysql建立联系,右击选择新建数据库,在弹出的窗口,输入数据库名称以及字符集,点击确定,完成创建
在新建的数据库中,右健点击表,选择新建表,在右侧会弹出窗口,开始设计表的结构,然后保存
3、maven项目的建立(参见视频)
3.1下载好Maven后,配置其环境变量
3.2检验是否按照成功
在命令行中输入指令mvn -v,出现以下界面,证明安装成功
3.3创建Maven项目
4、使用jdbc进行数据库的增删改查操作。(参见源代码)
创建工程,导入驱动jar包
在student数据库中建立一个表stu_1,以下增删改查都基于此表
4.1增加一行数据
package com.itccc.jdbc;
import java.sql.*;
public class select_2 {
public static void main(String[] args) throws Exception{
//1.注册驱动
Class.forName("com.mysql.jdbc.Driver");
//2.获取连接
String url="jdbc:mysql://127.0.0.1:3306/student?useSSL=false";
String username="root";
String password="caiyiting123";
Connection conn = DriverManager.getConnection(url,username,password);
//3.定义sql
String sql = "insert into stu_1(SNO,SSID,Ssex) values('20220204','4','男')";
//4.获取执行sql的对象Statement
Statement stmt = conn.createStatement();
//5.执行sql
int count = stmt.executeUpdate(sql);//受影响的行数
//6.处理结果
System.out.println(count);
//7.释放资源
stmt.close();
conn.close();
}
}
运行程序后,打开navicat查看stu_1表,刷新表,得到以下结果:
增加了一行SNO为20220104,SSID为4,Ssex为男的数据
4.2删除一行数据
将增加一行数据代码中String sql = "insert into stu_1(SNO,SSID,Ssex) values('20220204','4','男')";等式后面的内容改为"delete from stu_1 where SNO=20220204",运行程序,再查看stu_1表得到以下结果:
刚刚新增的SNO为20220204一行被删除
4.3修改表
将增加一行数据代码中String sql = "insert into stu_1(SNO,SSID,Ssex) values('20220204','4','男')";等式后面的内容改为"update stu_1 set SNO=20220107 where SSID=1",运行程序,再查看stu_1表得到以下结果:
编号为1的学生学号重20220101变成了20220107
4.4查找表的某一列
package com.itccc.jdbc;
import java.sql.*;
public class jdbcdemo {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection c = DriverManager
.getConnection(
"jdbc:mysql://127.0.0.1:3306/student?characterEncoding=UTF-8",
"root", "caiyiting123");
Statement s = c.createStatement();
// 准备sql语句
// 注意: 字符串要用单引号'
String sql = "select * from stu_1";
ResultSet rs =s.executeQuery(sql);
while (rs.next()) {
System.out.println( rs.getString(2) );
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
运行结果,查找到表的第二行:
表的第二行SSID被打印出来