课堂作业-添加课程(初识数据库和javaweb)

 

头秃了,头秃了,废了好长时间,终于学了个毛皮。闲话少说,开始正题!

我用的是eclipse java ee版本的,一开始用的是java版本的,好像是那个也可以用来写javaweb,前提是需要下载插件,经过我5次不懈的努力,终于,还是换了个软件。。。但效果还是不错的。因为是萌新,学习起来比较困难,

首先了解一下目录文件:感谢学长的分享 :https://www.cnblogs.com/zll20153246/p/7871723.html

java web架构:https://blog.csdn.net/a153375250/article/details/50935948

然后就开始下载各个软件,配置环境,参考:https://blog.csdn.net/haojun1996/article/details/86536929

这个大佬讲的很详细,按照一步一步来就可以

对于startup.bat文件,打开它就会一闪而过,结局办法:set JAVA_HOME = jdk 路径

 

 

 还有打开它后乱码的问题 :找到Tomcat 里面的conf目录找到logging.properties,把里面1catalina.org.apache.juli.AsyncFileHandler.encoding = UTF-8都改为1catalina.org.apache.juli.AsyncFileHandler.encoding = GBK。乱码问题就解决了。

开始写javaweb代码了:

 

1,创建一个web项目文件

 

 

 2,在所需要的类中写入所需要的代码:再次感谢学长

1
com.Bean包
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package com.Bean;
 
 
 
public class HaveClass
{
    private String  teachername;
    private String  place;
    private String  classname;
 
    public String getTeachername() {
        return teachername;
    }
    public void setTeachername(String teachername) {
        this.teachername = teachername;
    }
    public String getPlace() {
        return place;
    }
    public void setPlace(String place) {
        this.place = place;
    }
    public String getClassname() {
        return classname;
    }
    public void setClassname(String classname) {
        this.classname = classname;
    }
 
}
1
com.Dao包
1
package com.Dao;<br><br><br>import java.sql.Connection;<br>import java.sql.PreparedStatement;<br><br>import java.sql.SQLException;<br><br>import com.Util.DBUtil;<br>import com.Bean.HaveClass;<br><br><br>public class ClassDaoImpl {<br><br>    public void add(HaveClass claz)<br>    {<br>        //获得链接对象<br>        Connection connection = DBUtil.getConnection();<br>        if(connection==null) System.out.println("NULL!");<br><br>        //准备sql语句<br>        String sql = "insert into t_class(teachername,classname,place) values(?,?,?)";<br>        PreparedStatement preparedStatement = null;<br>        try {<br>        //创建语句传输对象<br>        preparedStatement = connection.prepareStatement(sql);<br><br>        preparedStatement = connection.prepareStatement(sql);<br>        preparedStatement.setString(1, claz.getTeachername());<br>        preparedStatement.setString(2, claz.getClassname());<br>        preparedStatement.setString(3, claz.getPlace());<br>       preparedStatement.executeUpdate();<br>        } catch (SQLException e) {<br>            // TODO Auto-generated catch block<br>            e.printStackTrace();<br>        }finally {<br>            //关闭资源<br><br>            DBUtil.close(preparedStatement);<br>            DBUtil.close(connection);<br>        }<br><br>    }<br><br>}
1
com.Util包
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
package com.Util;
 
 
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;
 
public class DBUtil
{
 
    public  static  Connection getConnection() {
        try {
 
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        Properties info = new Properties();  //定义Properties对象
        info.setProperty("user","root");  //设置Properties对象属性
        info.setProperty("password","2316811443");
        String url = "jdbc:mysql://localhost:3306/mydatabase";//?characterEncoding=utf8
        Connection connection = null;
        try {
 
             connection = DriverManager.getConnection(url,info);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return connection;
    }
 
 
    public static void close(Connection connection ) {
        try {
            if (connection != null) {
                connection.close();
            }
 
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void close(PreparedStatement preparedStatement ) {
        try {
            if (preparedStatement != null) {
                preparedStatement.close();
            }
 
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void close(ResultSet resultSet ) {
        try {
            if (resultSet != null) {
                resultSet.close();
            }
 
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
 
}

  后台jsp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<%@page import="com.Util.DBUtil"%>
<%@page import="com.Dao.ClassDaoImpl"%>
<%@page import="com.Bean.HaveClass"%>
 
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<%
    //接收客户端传递过来的参数
 
    String teachername = request.getParameter("teachername");
    String classname = request.getParameter("classname");
    String place = request.getParameter("place");
    try{
    if(!teachername.trim().equals("王建民")&&!teachername.trim().equals("刘立嘉")&&!teachername.trim().equals("刘丹")&&!teachername.trim().equals("王辉")&&!teachername.trim().equals("杨子光"))
    {
        throw new Exception("不能输入规定之外的老师名称");
    }
    else if(!place.trim().startsWith("基教")&&!place.trim().startsWith("一教")&&!place.trim().startsWith("二教")&&!place.trim().startsWith("三教"))
    {
       throw new Exception("不能输入规定之外的地点名称!");
    }
    else
    {
        HaveClass haveclass = new HaveClass();
        haveclass.setTeachername(teachername);
        haveclass.setClassname(classname);
        haveclass.setPlace(place);
        ClassDaoImpl classDao = new ClassDaoImpl();
        classDao.add(haveclass);
    }
 
    }catch(Exception e){
 
%>
    <h2 style="color:red ; font-size:50px">发生错误 : <%=e.getMessage() %></h2>
<%
    }
 
 
 
%>
 
 
 
 
</html>

  页面显示代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <title>课程添加页面</title>
</head>
<body>
    <form action="add.jsp" method="get">
        <table align="center" border="1" width="500">
            <tr>
                <td>课程名称 : </td>
                <td>
                    <input type="text" name="classname" />
                </td>
            </tr>
                <tr>
                <td>任课教师:</td>
                <td>
                    <input type="text" name="teachername" />
                </td>
            </tr>
            <tr>
                <td>上课地点:</td>
                <td>
                    <input type="text" name="place" />
                </td>
            </tr>
            <tr align="center">
                <td colspan="2">
                    <input type="submit" value="提交" />
                    <input type="reset" value="重置" />
                </td>
            </tr>
        </table>
    </form>
</body>
</html>

  

 

最后是项目文件目录

 

注意 jar 包,它是用来连接数据库的,一开始我加在

 

 里面,试了好久,发现连接数据库失败。

 

 然后我就把竟然包放在了lib目录下,就成功了‘

注意,连接数据库失败的话,可能原因有很多。

 

posted @   信2005-2赵磊  阅读(124)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示