草庐IT

day03-实现02

实现023.实现任务阶段3-处理Servlet023.3Servlet规范设计3.3.1MyServlet该类模仿Servlet接口,为了简化,只声明了三个方法:init(),service(),destroy()packagecom.li.MyTomcat.servlet;importcom.li.MyTomcat.http.MyRequest;importcom.li.MyTomcat.http.MyResponse;importjava.io.IOException;/***@author李*@version1.0*只保留了三个核心的方法声明*/publicinterfaceMyServ

day03-1-查看账单&结账功能

满汉楼034.功能实现054.8查看账单功能按照之间搭建起来的框架,在BillService编写方法4.8.1代码实现1.修改Bill类重写Bill类中的toString方法@OverridepublicStringtoString(){returnid+"\t\t"+menuId+"\t\t\t"+nums+"\t\t\t"+money+"\t"+diningTableId+"\t\t"+billDate+"\t\t"+state;}2.修改BillService类在该类中增加方法,用来获取所有订单记录//返回所有的账单,提供给View使用publicListlist(){returnbil

day03-1-查看账单&结账功能

满汉楼034.功能实现054.8查看账单功能按照之间搭建起来的框架,在BillService编写方法4.8.1代码实现1.修改Bill类重写Bill类中的toString方法@OverridepublicStringtoString(){returnid+"\t\t"+menuId+"\t\t\t"+nums+"\t\t\t"+money+"\t"+diningTableId+"\t\t"+billDate+"\t\t"+state;}2.修改BillService类在该类中增加方法,用来获取所有订单记录//返回所有的账单,提供给View使用publicListlist(){returnbil

day03-2-拓展

满汉楼035.拓展_多表查询前面都是对单表进行操作思考一个问题:如果多表查询怎么处理?例如,查看账单时,希望现实菜品名称查询的结果从上图变为下图:方案一由多张表组合查询的的结果,我们仍然可以将其映射成一个Javabean例如MultTableBean类,该类的属性可以来自多张表的字段,即该类跟多张表进行映射在这基础上,仍然可以使用之前的想法:在Dao层创建一个新的dao类,该类专门用于多表操作,在service层也创建相应的service类(根据实际情况),供界面层调用等方案二DBUtils数据库连接池多表连接查询-CSDN博客5.1方案一完成多表查询以menu表和dill表为例5.1.1代码

day03-2-拓展

满汉楼035.拓展_多表查询前面都是对单表进行操作思考一个问题:如果多表查询怎么处理?例如,查看账单时,希望现实菜品名称查询的结果从上图变为下图:方案一由多张表组合查询的的结果,我们仍然可以将其映射成一个Javabean例如MultTableBean类,该类的属性可以来自多张表的字段,即该类跟多张表进行映射在这基础上,仍然可以使用之前的想法:在Dao层创建一个新的dao类,该类专门用于多表操作,在service层也创建相应的service类(根据实际情况),供界面层调用等方案二DBUtils数据库连接池多表连接查询-CSDN博客5.1方案一完成多表查询以menu表和dill表为例5.1.1代码

day44-反射03

Java反射033.通过反射获取类的结构信息3.1java.lang.Class类getName:获取全类名getSimpleName:获取简单类名getFields:获取所有public修饰的属性,包含本类以及父类的getDeclaredFields:获取本类中所有属性getMethods:获取所有public修饰的方法,包含本类以及父类的getDeclaredMethods:获取本类中所有方法getConstructors:获取本类中所有public修饰的构造器getDeclaredConstructors:获取本类中所有构造器getPackage:以Package形式返回包信息getSu

day44-反射03

Java反射033.通过反射获取类的结构信息3.1java.lang.Class类getName:获取全类名getSimpleName:获取简单类名getFields:获取所有public修饰的属性,包含本类以及父类的getDeclaredFields:获取本类中所有属性getMethods:获取所有public修饰的方法,包含本类以及父类的getDeclaredMethods:获取本类中所有方法getConstructors:获取本类中所有public修饰的构造器getDeclaredConstructors:获取本类中所有构造器getPackage:以Package形式返回包信息getSu

day03-功能实现02

家居网购项目实现025.功能04-会员登录5.1需求分析/图解需求如图:输入用户名、密码后提交判断该用户是否存在如果存在,显示登录成功页面否则返回登录页面,要求重新登录要求改进登录密码为md5加密5.2思路分析5.3代码实现根据上述分析图,在对应的层添加方法5.3.1dao层修改MemberDAO接口,声明queryMemberByUsernameAndPassword()方法//提供一个通过用户名和密码返回对应的Member的方法publicMemberqueryMemberByUsernameAndPassword(Stringusername,Stringpassword);修改Memb

day03-功能实现02

家居网购项目实现025.功能04-会员登录5.1需求分析/图解需求如图:输入用户名、密码后提交判断该用户是否存在如果存在,显示登录成功页面否则返回登录页面,要求重新登录要求改进登录密码为md5加密5.2思路分析5.3代码实现根据上述分析图,在对应的层添加方法5.3.1dao层修改MemberDAO接口,声明queryMemberByUsernameAndPassword()方法//提供一个通过用户名和密码返回对应的Member的方法publicMemberqueryMemberByUsernameAndPassword(Stringusername,Stringpassword);修改Memb

day03-2无异常退出

多用户即时通讯系统034.编码实现024.3功能实现-无异常退出系统4.3.1思路分析上述代码运行时,在客户端选择退出系统的时候,可以发现程序并没有停止运行,原因是:退出时,程序将循环标志loop设为false,退出了内层循环,而外层循环因为也用了loop来作为循环条件,外层循环也同样退出。此时在客户端类QQView中的主线程已经结束,但是在循环过程中,因为与服务端连接而产生的线程并没有结束,整个进程也就没有结束,因此程序仍在运行中。解决方法:客户端:在main线程中调用方法,给服务端发送一个退出系统的message对象,然后调用System.exit(0)指令,正常退出。这样整个进程就可以关