- 博客(26)
- 收藏
- 关注
原创 ssm三大框架整合
那是因为三大框架说白了其实都是工具,就像你在做饭的时候,难不成只用锅?那肯定不是呀,肯定其他的也会一起用才能更好的去做饭这些呀,整合三大框架一样的,都是为了更好的去编写代码去实现功能。整合ssm第一步就是先导入包,将spring和mybatis的包导入,有人问为什么不导入springmvc的包,在学习的时候肯定有人给你说过springmvc本身就是spring里面的一个大工具集合对不对,所以导入spring的包中就含有springmvc的包。导入包以后,第二步要做的就是配置配置文件,就是以下的这五个。
2023-03-29 10:43:26
91
原创 springmvcjson数据格式
在使用springmvc的开发过程时,我们数据传输到jsp格式通常使用json在springmvc中我们常导入jackson插件进行数据的转换,将各种形式的数据转换为json格式。json数据格式就是以keyvalue的形式呈现,不止是实体类,map集合,list集合等都是可以的。首先我们要导入jackson的包,在没有使用maven的情况下还是要进行拷包的。在方法中我们会通过注解@ResponseBody进行数据格式的转换。在使用注解时不同的数据格式也要导入相关的jar包。
2023-03-23 11:45:43
108
原创 springmvc的数据传递
而重定向我们有两种数据传递方式,一个是直接拼串,通过字符串直接传递还有一中就是通过session带值在拼串和通过session之间通常会选择session因为拼串有些时候会遇到中文乱码问题解决起来会费一点点时间,所以通常会选择比较简单的session方式。转发选着通过request域带值其实很好理解,因为转发一次请求不重新定位,之前在javaweb学习中我们也知道request域作用于一次请求,存活的时间也就是从一次请求开始到一次请求结束,消耗的资源少。
2023-03-20 16:22:45
217
原创 SpringMVC的控制器
就像这样对类创建一个对外的访问路径这里我们要注意在一个method元素,它和前端页面的method一样就是选着get请求或者post请求在controller层只能用post请求当你不写的时候它是可以支持post和get两种请求方式。@Scope这个是控制单例和多例的在我们不写的时候一般都是默认单例,但是当控制器是单例时,对并发要求多一点时就会影响访问效率,因为只有当一个人用完了控制器,其他人才会使用,建议控制器采用多例。当然service层和其他层也有相对于的注解这里可以看spring的手册。
2023-03-16 15:51:43
158
原创 Springmvc基础讲解
springmvc它是spring体系中的一个大工具,我们常说框架是ssm,但是如果是sm其实更加的合理一些,因为ss中spring和springmvc本身就是一体的而关于连接jdbc其实spring也有自己的工具ORM但是相对来说Mybatis在jdbc这方面比springorm更加的优秀所以我们选择用mybatis。在使用注解的时候我们要在springmvc.xml中配置一个扫描器。ModelAndView ViewResolver 视图解析器。在使用扫描器的时候也要指定扫描springmvc的注解。
2023-03-13 11:52:51
33
原创 mybatis概述与一些bug解决方案
association:表示进行关联查询单条记录 property:表示关联查询的结果存储在cn.itcast.mybatis.po.Orders的user属性中 javaType:表示关联查询的结果类型 :查询结果的user_id列对应关联对象的id属性,这里是表示user_id是关联查询对象的唯一标识。还有在配置的时候注意不要忘了放入实体类的路径其他的bug大部分都是sql语句的问题。这里是多表联查的一个实例。
2023-03-09 12:04:02
136
原创 多表联查关系分析和详解
order和items中我们都定义了一个user,这里我们就是之间用user把这两张表分别和user联系起来,这样当我们想查哪些订单中有哪些商品就可以查出来如果我们在建一个中间类就可以轻易查出一个用户下有哪些订单,订单里面有哪些商品。现在我们看看多表联查的一对多,上面我说过其实多表联查的本质就两个一个一对一,一个一对多,至于多对多,你看两个多都对相同一个一这么说可能不直观我们建表看看。在数据库中我们常见的表与表之间的关系有三种分别是一对一,一对多,多对多,但是按照我的理解来说其实就两种一对一,一对多。
2023-03-06 14:55:54
82
原创 javaweb三大域对象之一servlercontext
由于servletcontext生命周期太长了,尽量少将数据放入到servletcontext中普通java文件读取外部资源用的类加载器classloader。普通java类读取外部资源时使用相对路径得是classes普通java类取web中web_inf资源跳两级eg:/...../...../文件/文件名。一个web应用只有一个serblecontext获得servletcontext对象,拿到对象的方法有两种。三大域对象从小到打的顺序就是request
2022-12-02 09:01:49
103
原创 javaweb过滤器
这里演示一个过滤器的效果,过滤关键词,再我的资源中有宁外一部分代码 HttpServletRequest request = (HttpServletRequest) req; HttpServletResponse response = (HttpServletResponse) resp; request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=
2022-10-21 00:43:45
49
原创 javaweb基础三
最早得javaweb,就是java程序中嵌入html后来学习asp,html嵌入java代码=jsp开发一层测试一层,成功以后再开发上层表:将表转换为对象orm以数据为中心开发时,分析问题从前往后分析,代码实现时要从后往前开发beanutils可以自动转换基础数据类型[eg:注册一个转换器ConvertUtils.register()BeanuUtils.populate()]object做不了空串验证,要转为字符串在开发中遇到问题是在前台解决还是后台解决考虑那个
2022-10-21 00:38:34
125
原创 javaweb基础二
数据验证要做两次前台和后台前台验证为了减轻对后台请求次数后台验证是为了防止数据在传输过程中出现问题数据验证用map做返回值原因:键值,容易定位错误三层模式,控制层,业务逻辑层,数据持久化层同化时间数据类型一般转为字符串,在需要运算时临时转为data类型分析业务从前台往后台分析编程时从底层后台开始往前开始写web开发中异常必须在控制层(controller)之前处理lib应该放在WEB_INF因为路径原因,开发目录与发布目录不一致脚本分为服务器端脚本:客服端脚本jsjs
2022-10-13 23:59:28
59
原创 javaweb基础
使用这窜代码可以有效解决,也可以在编程工具中设置编码为utf-8。在javaweb开放中出现乱码问题说明网页编码与工具编码不一致。在servlet中doget和dopost方法相同。上面是一段简单的servlet代码。
2022-10-12 14:57:21
44
原创 java笔记异常处理
try { 代码块} catch (InterruptedException e) { e.printStackTrace();//接收异常}异常处理是为了让代码块变得更健壮,异常处理不是修复错误异常处理就是抛出一个异常当有这个异常时跳过这个异常继续执行下面的代码不会因为一个异常使得整个代码死亡可以尝试做一做以下练习...
2022-06-16 23:00:40
105
原创 设计模式和内部类
设计模式在java基础时会学三种单例设计模式,适配器设计模式,工厂设计模式和代理模式单例设计模式是保证实例唯一化,有饿汉式和懒汉式,饿汉式就是跟随类的创建而创建,懒汉式就在调用时创建.适配器设计模式是在多个接口之间做一个连接器,使多个接口可以相连.工厂设计模式作用解耦,使代码之间的联系降低代理模式现在前期学到的是静态代理,作用提高安全性一般在实际开发中,实现功能的代码占30%,而其余的70%都用来做代码的健壮性,扩展性,安全性等内部类编译后的字节码文件名是外面类的名字加上$加上内部类的名字构成创建实例两种方
2022-06-16 10:12:38
41
原创 java抽象类和接口
抽象类的特点:不能实列化,可以有抽象方法也可以有实现好的方法抽象类是普通类的模板,子类必须要实现父类的所有抽象方法,抽象方法不能实例化,但是有构造函数接口是一种标准,一个类可以实现多个接口接口之间可以多继承,接口中没有构造函数在先阶段我们先理解为接口中没有实现好的函数解释一下抽象类有个特点就是专业当父亲,就是提高模板举个例:苹果,香蕉,葡萄这些都是水果吧他们都是有实例的对吧然后他们也都属于水果对吗,那么这个水果也就是他们的抽象父类,但是水果你们能例举实例吗?水果不能例举出
2022-05-27 08:38:34
55
原创 java面对对象封装解释和构造函数解释
* 面向对象:面向对象的思想来源于生活,从静态和动态两方面来看待事物* 就像面对一个美女,你第一眼看到的肯定是她的身材容貌等外在因数,而这些因素不会改变所有这就是静态属性* 当你和美女交流她的行为举止给你的感受这些就是动态属性* 我们创建类的时候就是根据事物特征来创建的,继续用一个美女比喻* 我们看到的是她这个人,然后开始就会以她整个整体来创建一个类* 类里面是她的属性,但是后来发现以她为一个类太过笼统,然后有细分* 把她静态属性分为两部分,她的名字性格这些分为一个类,身材样貌再分为一个类,然.
2022-05-23 11:33:42
47
原创 java继承
java面向对象三大特性之一的继承extendsJava中只支持单继承,不支持多继承,但支持多层次继承子类在实例化的过程中会调用所有的父类的构造函数super()访问父类对应参数的构造方法super只能写在第一行并且不能于this连用super代表访问父类子类在重写父类方法时,权限只能大于或等于父类并且静态方法只能覆盖静态方法,原因是生命周期不同class JavaDemo21{ public static void main(String[] args) ...
2022-05-19 15:33:06
69
原创 java中常用的几种string
1.String实例化的两种方式(1) String name1 = "haoren";(2) String name2 = new String("huairen");2两种实例化的区别(1)第一种 String name1 = "haoren"; String name2 = "haoren"; name1和name2指向了同一空间,“haoren”只存储了一次(2)第二种 String name4 = new String("haoren"); String nam...
2022-05-19 15:23:24
252
原创 面向对象继承练习
import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;public class JaDemo6{ public static void main(String[] args) { Wg w = new Wg("dsz",12); System.out.println(w.getName()+","+w.getAge()); Db d = new Db("dsb",13);.
2022-05-19 15:16:50
134
原创 面向对象练习构造函数
public class JaDemo5 { public static void main(String[] args) { ThisDemo5 t1 = new ThisDemo5(); ThisDemo5 t2 = new ThisDemo5(); Dog d = Dog.getDog(); Dj j = Dj.getDj(); }}class ThisDemo5{ public static String..
2022-05-19 15:14:03
56
原创 面对对象封装练习set get方法
import java.util.Scanner;import java.io.File;public class JaDemo4 { private String name; private int age; private String gender; public JaDemo4(){} public JaDemo4(String name,int age,String gender){ this.name = name; .
2022-05-19 15:10:31
56
原创 java基础之方法
* 参数:进入方法的数据*返回值:从方法中出来的数据* 定义方法格式:* 修饰符 返回值类型 方法名称(参数类型 参数名称,.....){* 方法体* return 返回值;* }* 修饰符:现阶段的固定写法,public static* 返回值类型:方法最终产生的数据结果是什么类型* 方法名称:方法的名称,规矩和变量一样,小驼峰* 参数类型:进入方法的数据是什么类型*参数名称:进入方法的数据对应的变量名称* ps:阐述如果有多个,需要用逗号分割* 方法体:方法需要做的事情,若干.
2022-05-13 08:31:55
62
原创 运算符的学习与注意事项
在算术运算符中特别需要注意的是"/"在进行整除是,只有除数与被除数都为整数时才能整除如果除数或被除数有一个为小数时,则默认为浮点数double逻辑运算符中要注意两个,一个是短路与,另一个是短路或短路与"&&"只要第一个表达式的值为逻辑假,那么之后的表达式就不会进行运算, 在实际开发中推荐使用短路与,因为效率高短路或"||"与短路与相似,但短路或是第一个表达式为真时后面的表达式才不会进行运算,在开发中推荐使用位运算符前几个比较简单有和上面...
2022-05-06 11:41:50
343
原创 Java数据转换学习笔记
自动转换隐式:从大到小强制转换显式1.代码需要进行特殊格式处理,不能自动完成2.范围小的类型,范围小的变量名=(范围小的类型)原本范围大的类型注意事项1.强制转换类型一般不推荐,可能发生精度损失,数据溢出2.byte/short/char这三种类型都可以发生数学运算3.byte/short/char三种类型在运算的时候,都会被首先提升成int类型,然后再进行运算4.boolean不能参与数据转换eg:int num=(int)100Llong转int...
2022-04-20 15:48:28
328
原创 Java变量
变量创建格式数据类型 变量名称;变量名称 = 数据值;(赋值,将右边的数据值,赋值给左边变量)当然也可以这样写数据类型 变量名称 = 数据值使用变量时,注意事项;1.创建多个变量,变量之间名称不可以重复。2.对于float和long,赋值后最好留下大写字母后缀区分3.如果使用byte和short类型变量,那么右边的数据值不能超过左侧类型范围4.没有进行赋值的变量不能直接使用,一定要赋值以后才能使用5.变量使用不能超过作用域范围【作用域】从定...
2022-04-18 11:07:38
332
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人