java高级应用中碰到的若干问题
1 :关于数据库中的id与持久化对象中的id该怎么处理是使用代理id还是,即是应该使用代理主键还是自然主键;使用代理主键是怎么处理的,使用自然主键又是怎么处理的;
2:关于序列化和序列号的问题:怎么处理,要还是不要,要有什么好处,不要有什么坏处;
用了跟没用有什么区别,该怎么用,他是干什么的;
3:既然主函数是程序的入口,那么对于javaweb程序即tomcat服务器中是否有一个主函数,作为整个javaweb程序的入口,然后调用其他类的方法,实现一系列的功能。
4:
抽象类要不要继承Object?换句话说,抽象类可不可以继承非抽象类(即可以实例化的类);
事实证明这是可以的;
5:
问题:在socket中,socket服务关闭要不要放入finally语句中呢?
7:request.setCharacterEncoding("utf-8");//这只对POST提交方式有效;为什么啊??
这个问题要好好想想看
8:对于servlet接口中,我们覆盖了service方法,由底层调用,这是不是模板设计模式啊?
9:Java中有没有这样一个类或者方法,只删除某个文件目录,但是该目录下的文件保存到要被删除的文件夹的上一层目录;
比如说 D:\javaprop\helloworld.java;
我要把helloworld.java放到D:的根目录下;而把javaprog目录给干掉;而且要做批量操作;
10:为什么在Spring中aop编程时,异常通知会在最终通知之后,即先执行最终通知,后执行异常通知,不过该异常是运行时异常;
11:
对于匿名内部类,我们应不应该使用,什么时候使用,用到时候会不会被说装逼,甚至会觉得你写代码习惯不好;
12:多线程技术可以提高程序运行效率吗??
java
servlet
spring
设计模式
socket
------解决方案--------------------3. 这个我之前看过jetty的是有的,你看一下startup.bat顺藤摸瓜能找到。
5. 对于强制要释放的资源最好都放在finally中。
7. 我的理解是由于get,post请求参数放置的位置不一样,get是在header中,post是content中好像。而且对于不同的浏览器发出的ajax请求的url编码也是不一样的。
8. 我觉得不是模板模式。在GOF中对模板有两种方式实现,一种是规定了大体步骤,在变化的地方使用钩子做回调,另一种是子类继承抽象类。service方法是根据请求的method来调用不同的doXXX方法。从结构上看好像有点像继承抽象类的,但从使用场景上,模板是类似一种策略模式的,在接口不变的情况下改变实现。service在应用上更有点调度的感觉。
11. 我见过的匿名内部类的用法大概有两种,一种是像闭包的用法,另一种是写一个大接口,再写一个抽象类继承之,所有的方法都用空实现,在应用中使用该抽象类的匿名类来玩。
以上是我个人的一些观点
------解决方案--------------------
模板是有一种实现是抽象类,不是抽象方法。你可以去读一下,不是特别难懂。先看模式的范式,再自己领会精神。