- 博客(19)
- 收藏
- 关注
原创 山海关古城测试--房产房屋
因为需要在房产中显示房屋信息,所以在SQL查询时就需要将房屋信息给查询出来,并且房产信息与片区街道有关,所以在搜索阶段一共需要连接四张表,片区表,街道表,房产表,房屋表,而在插入删除修改等阶段只需要三张表,片区表,街道表,房产表,所以为了代码方便,我们写了两个SQL查询语句,利用连表查询来查询需要的信息。出现原因就是:南大街的街道id与西区的片区id一致,所以在产生西大街结点时,误认为它的父节点是南大街,导致出现树状结果错误。
2024-08-15 16:43:46
884
原创 Day18 查看学生选课
属性:id, t_bxw_student_zhk_id, t_bxw_course_id。点击某一学生的选课按钮,跳转至该学生的已选课程界面。在service接口和mapper接口要新建该方法。在service实现层要实现该方法。:实现id的传送,显示课程的具体信息。:根据学生id,查询课程信息列表。具体实现根据学生id查询课程列表。:通过学生id查找全部已选课程。:将学生id传入html界面。
2024-07-19 00:20:33
476
原创 Day17 学生表专业表连接
同之前的代码一致,先在DaoImp层中进行二次查询得到major,设置student的属性major,在JSP层中接收打印major名称。修改main->resources->templates->yw->student下的student.html文件,类似先前的JSP文件。student表的一个属性T_BXW_MAJOR_ZHK_ID是major表的主键,二者为一对多的关系,加入类似先前的major类TBxwMajorZhk并生成对应的set,get方法。通过sql语句进行修改。
2024-07-18 00:12:29
500
原创 Day14 Servlet小结
新建一个S1,给S1设置属性x=0,在doGet中使x+1,输出x,每次调用S1,如果每次都是新创立一个S1,那每次都会执行x=0,控制台将一直输出1。:多次调用S1的doGet方法,在doGet方法中进行长时间的输出,一个方法要五分钟,如果两个doGet的输出是按序输出,说明是单线程输出,如果是同时输出,说明是多线程。第一次打开S1:发现调用了新建S1对象方法,初始化init方法,service方法。:在多次调用Servlet对象S1的同一个方法时,是多线程同时进行,还是单线程按序进行?
2024-07-14 19:55:35
669
原创 Day13 用户登录
在浏览器页面中,如果用户直接输入其他界面的网址进行访问,那么还是会跳转到其他界面中去,用户输入界面并没有产生作用,所以我们需要该用户在第一次访问时,不管输入什么网址,都要进入输入账号密码页面,如果没输入过,则一直输入,输入过则可跳转到访问界面。为实现该功能,我们可以在过滤层进行判断,利用Session存储用户,如果存在Session信息,则允许跳转,如果不存在Session信息,则一律跳转至登录界面。实现界面:如果服务器不关闭,就会一直增加,服务器关闭或重启,次数会归零。
2024-07-14 00:26:41
981
原创 Day12 课程查看选课学生信息作业
修改代码后,在实现过程发现,按id查询功能正常,但是想将输入的id删去,查询也正常,但对于回显功能仍存在问题,回显值不为默认值隐藏,而是为可查询的学生id最大值,经讨论查阅发现Java 函数的参数引用会导致参数的更新,有点类似C++中的指针,所以需要在结束时在做修改值为默认值的操作。在未选课学生界面,经过实践发现,可以利用上述已有的Dao方法,通过全部学生stus - 已选课学生stu1s 来表示未选课学生,以此进行全部未选课学生信息的显示,但是在条件搜索界面,没有想出一个比较好的方法来实现。
2024-07-12 21:45:26
444
原创 Day11 学生选课系统
一个学生可以选择多个课程,一个课程也可以被多个学生选择,所以学生和课程是多对多的关系,因此需要新建一个stucour表,表示学生选课关系。
2024-07-11 16:59:19
427
原创 Day10 多表查询
在添加属性时,因为我们在浏览器展示的实际上是major中的name属性,所以在设置Student类时,我们不添加major_id这个属性,而是将Major类直接加入Student,需要用哪个就取哪个。在修改Dao层文件时,注意有两种方法修改Dao与SQL的连接,一种是直接在SQL语句中进行修改,多表连接查询,一种是多次查询,在Java代码查询之中再插入查询。虽然major_id是外键,但是在实际代码书写过程中,我们并不把他当作外键,就仅仅视为普通的一个属性,在脑子中记住它为外键。
2024-07-11 00:10:32
355
原创 Day9 解决中文乱码
因为Dao层中写了很多连接,如果修改的话,要一个个全部修改,麻烦而且易错,所以我们新建一个config包,内含DataSource类,里面包含这些信息,要修改的话只要在里面修改即可。因为Servlet中涉及多个跳转页面,所以如果要修改的话,也很麻烦,所以我们加入filter过滤层,通过过滤全部跳转界面,来实现全部request和response的设置编码模式。3.将代码全部复制,打开新建查询,运行代码,SQL即支持中文输入。2.打开文件,将下述编码格式修改为utf8,将代码全部复制。
2024-07-10 00:24:20
724
原创 Day7 修改和按条件查询
注意代码格式规范,多打或少打符号或空格,会导致代码语句的执行异常,例如<c:if test="${requestScope.stu.sex eq 'w'}">与<c:if test="${requestScope.stu.sex eq 'w'} ">只差了'w'}后的一个空格,但是后者是不执行的。因为id是不可修改的,所以在新页面中,应该将id隐藏,注意不可将id信息删除,否则传递到Servlet文件中无id信息,就修改不了学生信息。按输入学生信息查询,不输入即为默认值。
2024-07-07 16:12:20
1040
原创 Day6 删除和添加学生信息
因此要选择带El表达式的绝对路径${request.contextPath}/StuCour/StuDelServlet,其中${request.contextPath}表示上一次访问的ip地址,因为前后访问的ip是一样的,所以这样可以保证每次打开都可以访问的到。(1)相较于delete,add功能需要填入需要添加的具体信息,所以在实现add功能时,需要跳转到一个新的页面,使得能够输入信息,完成添加功能。如果使用GET方法,则在浏览器网址中,我们可以看到传送的数据有哪些,分别是什么。
2024-07-06 22:08:20
670
原创 Day5 JSP与MVC
前情提要:为什么之前要将Control和View分开写呢?不是更麻烦么?在昨天的代码中,View中只负责视图,主要代码是html代码,Java代码较少,使得修改代码很麻烦,因此就需要引入JSP技术,使得JSP专门负责视图部分代码的书写,使得修改视图的代码更加方便简单。1.先导入需要的jar包2.利用表达式简化for循环语句。
2024-07-05 23:59:03
634
原创 Day4 JDBC进阶
数据库事务( transaction)是访问并可能操作各种数据项的一个数据库操作序列,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。
2024-07-05 02:05:27
1057
原创 Day3 Java连接mySQL
进入mysql主文件夹,找到my-default.ini和my.ini文件,删除my.int,复制my-default.ini,改名为my.ini,用笔记本打开新建立的my.ini文件,开始更改文件内容如下,改成自己mysql安装路径。注意:新建立class类时,系统会帮我们在xml文件中直接添加对应内容,但如果后续更改了java文件的class类名,需要到xml文件中手动更改,系统不会帮忙更改。之后在写代码时,直接创建new Servlet,填入项目名,包名,类名。
2024-07-04 00:53:03
990
原创 Day2 网页制作学生信息查询系统
bin 二进制文件conf 配置文件lib 库文件logs 日志文件temp 临时文件webapps 项目文件Servlet是Server Applet的简称,是用Java编写的服务器端程序。其主要功能在于和浏览器交互并生成动态Web内容。后续我们将不再自己写一个假服务端来接收浏览器请求,直接使用Servlet进行。
2024-07-03 00:32:02
779
原创 Day1 HTTP协议
如何实现客户端和服务端之间的链接?满足request和response要求?实现二者的精确查找?例如 百度网址: http://202.108.22.5:80/index.html。例如 百度网址: http://baidu.com:80/index.html。IP数值记不住,所以实际生活中没人用IP搜索网址,改用域名搜索。网址 = 协议名称://IP:端口号/uri。即: 网址 = 协议名称://域名:端口号/uri。
2024-07-01 22:50:56
408
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人