实训笔记1
实训笔记
第一天
1.安装tomcat或者其他大数据开发的路径不含中文及空格
2.和同开发
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FoApp1oX-1683039421826)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230422110823748.png)]
使用注意:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZHuF6MUr-1683039421827)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230422143631518.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Yug64IzR-1683039421828)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230422152407525.png)]
c3p0
/**
* 如何使用c3p0
* private QueryRunner queryRuuner = new QueryRunner(C3p0Utils.getDataSource())
*String sql = "select * from user where name=?" 使用占位符可以防止sql注入
* queryRuner.query(sql,new BeanHandler<>(User.class),name)
*/
public class C3p0Utils {
private static ComboPooledDataSource comboPooledDataSource = new ComboPooledDataSource();
public ComboPooledDataSource getDataSource(){
return comboPooledDataSource;
}
}
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QDRyIb7j-1683039421828)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230422170949087.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tvDKewW8-1683039421829)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230422212457370.png)]
BaseServlet
/**
* 这样的话每个功能只需要写一个servlet,类似与这个ssm中reqeustMapping注解的功能
*/
public class BaseServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String uri = req.getRequestURI();
String str[] = uri.split("/");
if(str.length>=3){
String methodName = str[str.length-1];
Class<? extends BaseServlet> clazz = this.getClass();
try{
Method method = clazz.getMethod(methodName,HttpServletRequest.class,HttpServletResponse.class);
if(method!=null){
method.invoke(this,req,resp);
}else{
System.out.println("系统错误,urls错误");
}
}catch (Exception e) {
e.printStackTrace();
}
}
}
}
这样的话每个功能只需要写一个servlet,类似与这个ssm中reqeustMapping注解的功能
前端规范
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qCxEpJAX-1683039421829)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230423091200938.png)]
目的:减轻后台压力,提高性能
硬编码的位置使用常量设置,代码中尽量减少硬编码的内容
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cDvCbdrc-1683039421830)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230423111335282.png)]
同过resp.getWriter().print()来给ajax返回值
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NQBL12He-1683039421830)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230423111414374.png)]
dao层只操作数据库,service来执行业务
sercie中的方法参数一般为request ,respons
dao层传入的参数一般为实际数据
修改原有代码通过注释,不要删除
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q1SmO2oz-1683039421831)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230423113952189.png)]
不要提交自己的配置文件
统一处理这个crud的异常,数据类型异常爆出
解决不能识别驼峰式命名
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qv2Y24uz-1683039421831)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230424091616148.png)]
只提交自己修改的部分
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qlLeAsfb-1683039421831)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230424101716243.png)]
数据库
外键添加到这个多的表中,多对多新建一个表
多对多时的级联
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zRsAiPQr-1683039421832)(C:\Users\18249\AppData\Roaming\Typora\typora-user-images\image-20230424155935368.png)]
删除其中一个表,中间表对应的删除
每个人没有都做crud,但是每个都做了debug