- 博客(6)
- 收藏
- 关注
原创 Sping学习笔记——3.依赖注入
把autowire的值替换成byType即可,按照形参列表中类型去匹配,注意xml文件中如果有两个bean的class相同,就会发生冲突(一般没人这样写),这种方式最为便捷和常用。一是使用type属性去指定参数的类型,让其按照类型匹配,但是仅适用于传入的参数类型各不相同,如果有两个相同的类型,这种方法就行不通。这里的name属性对应的值需要跟构造器中形参的名字一样,耦合度较高。此方法较为便捷,且耦合度较低,首先类中需要给依赖定义一个setter。注意name对应的值是依赖的setter方法中形参的名字。
2024-06-12 14:18:43
397
原创 spring学习笔记--2.bean的入门
这是因为在对象被创建时,容器会记录单例对象的句柄,而多例对象的数量非常多,为了节约内存,容器不会记录其句柄,因此无法对其进行销毁,需要手动销毁。对于单例bean,当首次被获取时,会被创建,执行init方法,被容器销毁时,会执行destroy方法。name是bean的别名,可以有多个,也可以不写,不同的几个name之间用逗号或空格或分号隔开,作为getbean的参数也可以获取bean;id是bean的标识符,只能有一个,且必须要写,调用容器的getBean方法,传入bean的id即可获取bean。
2024-06-11 20:37:17
741
原创 Spring学习笔记--1.IoC入门
IoC即控制反转,一个类不再主动控制创建自己所依赖的类,而是交给外部容器去控制创建自己所依赖的类。例如,有一个汽车厂,原本想要制作一辆汽车,需要自己制作发动机、轮胎、方向盘等零部件,汽车就是这个类,发动机和轮胎就是它的依赖项,这些依赖项需要汽车自己用new创建出来;使用IoC之后,这些零件就不需要汽车厂自己去制作了,都交给外部别的厂商去制作,汽车厂只需要把这些零件拼装起来。这里的外部厂商就是ApplicationContext.
2024-06-11 16:57:06
733
原创 mybatis参数占位符的名称和注解的使用
会把多个参数封装成map集合,加入有两个参数,map集合里面会有四个键值对,分别是("arg0",参数1),(“param1”,参数1),(“arg1”,参数2),(”param2“,参数2),建议使用注解,使用后,会把arg0,arg1.....替换成自定义的名字,param1,param2保持不变.5.Array:也会封装为map集合,里面有两个键值对:("arg0",传入的array)("array",传入的array),最好使用注解。1.POJO类型:参数占位符和属性名是一致的,可以不使用注解;
2024-05-30 22:24:10
491
原创 在socket中使用bufferedReader.readLine()忽略返回值带来的问题
每个客户端由一个线程管理,接受一个客户端的信息,然后转发给别的客户端。当客户端调用socket.close()时,bufferedReader.readLine()会返回一个 null,而不是阻塞等待客户端的信息,就会继续运行下面的代码,然后进行无限循环。
2024-05-23 13:23:00
346
原创 使用socket试图保持长连接遇到的错误
同样的,直接使用socket.close()也会添加这个结束标志,二者却别在于前者只关闭了输出,后者关闭了整个连接(即使同时shutdownInput和showdownOutput也没有关闭连接,只是关闭了这个连接发送和接受数据的能力)而使用了socket.shutdownOutput()之后,该socket是无法再次getOutputStream的,也就无法再次发送数据,因此通过简单的方式实现长连接是不可能的。必须要加上心跳包一类的东西,这就触及到了笔者这个初学者的知识盲区。
2024-05-21 22:52:19
307
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人