工作log
整理电脑, 发现这么个文档, 留个纪念...
1. 2016-11-17
================================
3.采集任务编制页面,表格表头点击实现升序/降序排列
5.socket编程
6.多线程
7.webservice
8.读写分离
9.定时任务
10.报文解析
13.webservice
14.accept方法是一种阻塞方法?什么意思?
2. 2016-11-18
2.kafka
broker服务器(kafka的节点)
protobuf 安装,使用.2个作用:序列化和反序列化.用protobuf自身的语法定义一个对象,可编译为java和c的语法的文件.
设置消费者群组,如果每个节点都需要收到消息,则组名设置不同.
JMS
3. 2016-11-21
1.weblogic安装(Linux系统)
2.oracle安装(Linux系统)
4. 2016-11-24
insert into p_menu (MENU_ID, AUTH_ID, NAME, TITLE, P_MENU_CODE, MENU_FOLDER_FLAG, HANDLE_SORT, HANDLE_REPRESENT, EVENT_REPRESENT, PARA, SORT_NO, REMARK)
values (32012, 32012, '电压监测', '电压监测', '320', '1', '1', '/newPage/voltagemonitor.jsp', '', '0', 32012, '11111111111');
insert into p_priv (AUTH_ID, PRIV_NAME, TYPE_CODE, SYS_RESRC_NAME, RESRC_ADDR, SORT_CODE)
values (32012, '电压监测', '320', '', '', '');
linux系统移动文件到指定目录
mv /home/install/bjuser.dmp /home/oracle/app/admin/orcl/dpdump/bjuser.dmp
rm -rf 文件或文件夹
==============================
Linux下
nohup的作用
EJB中注解
@Local
@Stateless
@Remote
@EJB
5. 2016-12-09
下拉列表联动
style.display = "inline","none",""区别
onclick="gopreviewMeter()和 onclick="javascript:goaddcondition()区别
6. 2016-12-13
jsp smart upload ,http协议
7. 2016-12-16
2.逆向工程生成不了?
3.struts中struts2-config-browser-plugin-2.3.15.3.jar这个jar包做什么用的?
struts2的小插件,提供struts.xml配置文件的可视化的视图
4.eclipse有时候变成繁体字,有时候简体中文呢?
5.struts.xml文件配置常量作用?配置开启动态方法访问作用?
<!-- 配置常量 -->
<constant name="struts.action.extension" value="do,,"></constant>
<!-- 配置开启动态方法访问 -->
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
6.ANSI编码格式/UTF-8无BOM编码格式/UTF-8编码格式/UCS-2 Big Edian编码格式/UCS-2 Little Edian编码格式
8. 2016-12-16
首先,Runnable 是Java 用来实现多线程的接口。
Java中实现多线程有两种途径:继承Thread类或者实现Runnable接口.
在使用Thread的时候只需要new一个实例出来,调用start()方法即可以启动一个线程。
Thread Test = new Thread();
Test.start();
在使用Runnable的时候需要先new一个继承Runnable的实例,之后用子类Thread调用。
Test impelements Runnable
Test t = new Test();
Thread test = new Thread(t);
在使用Runnable定义的子类中没有start()方法,只有Thread类中才有。
实现Runnable接口相比 继承Thread类有如下好处:
->避免点继承的局限,一个类可以继承多个接口。
->适合于资源的共享
9. 2016-12-16
1.路径问题!!!!
WEB开发中的路径
* 相对路径
* 绝对路径
* /day09/xxx
* 绝对路径两种
* 客户端绝对路径(包含项目名称)
* 服务器端绝对路径(不包含项目名称)
ServletContext对象
* 服务器启动的时候创建,一个实例对象,被所有的项目中的资源共享,服务器关闭时候销毁
* 域对象
* 用来传递数据(保存数据)
* 根据域对象存活时间不同,从域对象获取指定的值
* 作用
* 获取全局的初始化参数
* 数据的共享
* 读取资源的文件
* getRealPath(String path) -- 返回的文件的绝对磁盘路径
* getResourceAsStream(String path) -- 通过文件的路径获取到该文件的输入流
0.ServletContext对象数据共享和读取资源文件的代码。
1.需求:编写HTML的页面,提供超链接,点击访问某一个Servlet(从数据库中查询数据,把数据打印到控制台上)。
===================
10. 盗链
获取请求头的信息(重点)
1.会使用获取请求的头的方法,了解请求头
2.方法和头
* String getHeader(String name) -- 获取请求头信息
* user-agent -- 判断当前浏览器使用的版本(文件下载的时候)
* referer -- 记住当前网页的来源(防止盗链)
=============================================
11. 向页面输出中文乱码的问题
1.学2个方法,对页面输出中产生乱码的问题,知道怎么产生,重点怎么解决乱码的问题。
2.两个方法
* ServletOutputStream getOutputStream()
* PrintWriter getWriter()
字符流
字节流
设置浏览器编码均可行
设置response缓冲区编码以及获取字节数组设置编码不可用
12. 获取请求中文乱码问题
1.怎么产生的?怎么解决
* 产生
* 页面是UTF-8编码,数据采用UTF-8编码进行编码。传递给Tomcat服务器了。
* Tomcat服务器默认的编码是ISO-8859-1(7.x版本是编码),Tomcat默认使用ISO-8859-1进行解码。
* 解决
* 先使用ISO-8859-1进行编码
* 再使用UTF-8进行解码
2.request获取请求参数中文乱码的解决
* get请求
* 只有一种
* 先使用ISO-8859-1进行编码
* 再使用UTF-8进行解码
* post请求
* 两种解决方案
* 先使用ISO-8859-1进行编码
* 再使用UTF-8进行解码
* 设置request对象的缓冲区的编码
* void setCharacterEncoding("UTF-8")
==============================================
13. 如何查看浏览器的编码格式,各种浏览器默认编码格式是什么
=================================================
14. 生成验证码的代码
================================================
15. 转发和重定向的区别
区别:什么时候使用重定向,什么时候使用转发
* 转发地址栏不变,重定向地址栏变化
* 转发不用写项目名称,重定向需要写项目名称
* 转发可以使用request对象传递至,重定向不可以使用request对象
* 转发只能在服务器的内部进行操作,重定向可以定向到任何的资源
16. 2016-12-19
long和double互转
long l = Math.round(d);
double dd = (double)ll;
17. 2016-12-21
webservice
1.什么是webservice?
Web service 即web服务,它是一种跨编程语言和跨操作系统平台的远程调用技术即跨平台远程调用技术
webservice 是一种通过网络协议进行远程调用的技术,在企业开发中主要用于实现接口功能
2.什么是网络协议?
网络中各个计算机要进行通信,在一定标准协议的基础上进行通信,客户端发出的数据服务端才能解析,将协议理解成一种语言
3.实现远程调用的2中方式?
方式1:基于socket方式
方式2:基于jaxws方式
4.jaxws编程(基础)
1)什么是jaxws?
jaxws是jdk提供的基于soap协议开发webservice
2)soap协议包括什么内容?
soap1.1和soap1.2
3)案例:使用jaxws开发区域查询远程接口,远程传输XML数据
4)客户/服务器模式
包括客户端和服务端,调用方称为客户端,被调用方称为服务端
18. 框架整合
问题:
spring为什么只能以多例方式管理struts的action?
多例方式管理action:来一个请求,重新new一个action实例!
不能使用单例,只能使用多例:
原因是:struts通过ognl接收参收,需要在action的实例中定义成员变量,接收请求的参数。
如果使用单例,多个请求有多个线程,使用同一个action实例,成员变量在多个线程之间共享,会导致数据冲突。
springmvc可以使用单例,因为spring通过方法形参接收参数,多个请求是多个线程,方法的形参会在每个线程中创建独立的内存空间!
19. spring和struts的整合方式是什么?
spring和struts整合有两种方式:
1、action的实例由struts创建,spring向action实例中注入service。
2、action的实例由spring创建,spring向action实例中注入service。
本系统使用第二种,因为只有spring来创建action的实例才可以使用spring 的aop功能对action进行切面编程!
spring管理service通过单例还是多例?
通过单例方式来管理。
如果类中有数据域的成员变量,是线程不安全的,必须要使用多例!
spring如何控制service的事务?
spring采用声明式事务控制方式,本系统使用xml配置方式 !
spring管理dao通过单例还是多例?
通过单例方式来管理。
spring如何和hibernate进行整合?
spring以单例方式管理hibernate的sessionfactory。
spring和hibernate整合后,使用HibernateTemplate模块方法操作数据库。
20. 2016-12-30
1.Action类类似于Servlet程序,但是他们是不同的.有何不同?
2.jsp放到WebContent目录下和WEB-INF目录下有何区别?
3.配置文件中jsp是关键字?
21. 2017-1-20
java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法?
有两种实现方法,分别是继承Thread类与实现Runnable 接口用synchronized关键字修饰同步方法反对使用stop(),是因为它不安全。它会解除由线程获取的所有锁定,而且如果对象处于一种不连贯状态,那么其他线程能在那种状态下检查和修改它们。结果很难检查出真正的问题所在。suspend()方法容易发生死锁。调用suspend()的时候,目标线程会停下来,但却仍然持有在这之前获得的锁定。此时,其他任何线程都不能访问锁定的资源,除非被"挂起"的线程恢复运行。对任何线程来说,如果它们想恢复目标线程,同时又试图使用任何一个锁定的资源,就会造成死锁。所以不应该使用suspend(),而应在自己的Thread类中置入一个标志,指出线程应该活动还是挂起。若标志指出线程应该挂起,便用wait()命其进入等待状态。若标志指出线程应当恢复,则用一个notify()重新启动线程。
22. PS
23. 2.compareto()
ArrayList和LinkedList区别
由简历上的一个可视化居然聊到了swt rcp还有tableau等等
市场调研公司
页面解析,爬虫框架等等
ERP领域的NO.1
前端的框架和平台,比如angularjs以及nodejs
Tomcat web服务器的代码,但是没有太深入,体会比较深的就是管道模式和面向接口编程的应用
开发自己的博客
24. Dispatcherservlet的拦截方式??
Spring MVC实现的四种方式:
方式一:实现Controller接口,表明是一个Controller
25. Web.Xml中拦截的三种方式以及静态资源如何访问
26. Spring MVC源码导入eclipse中
27. Visio
不需要
28. Jsp中的../路径问题
Jsp
相对路径:../XX
绝对路径:${pageContext.request.contextPath}/XX
Ajax
29. 开发相关
- Oo思想, oop 常见模式, 适配器, 单例, 工厂, 观察者模式
- Ssh, quartz, security, sso, redis, mq, aop, 日志处理简化
- jQuery, pojo, js, html, css
- Oracle mysql SQLServer 数据库编程, 如函数, 存储过程, 触发器, job
- 分布式存储, 分布式计算, 消息总线, 服务总线, 系统集成, 集群部署, 系统问题定位
30. 获取显示器的分辨率
1、调用Toolkit类的static方法getDefaultToolkit得到一个Toolkit对象: Toolkit kit = Toolkit.getDefaultToolkit(); 2、调用Toolkit对象的getScreenSize方法把屏幕尺寸作为一个Dimension对象返回: Dimension screensize= kit. getScreenSize(); 3、从对象的实例变量width和height中获得屏幕的宽度和高度: int screenWidth= screensize. width; int screenHeight= screensize. height; 如下时示例代码: public class Screen { public static void main(String[] args) { int screenWidth=((int)java.awt.Toolkit.getDefaultToolkit().getScreenSize().width); int screenHeight = ((int)java.awt.Toolkit.getDefaultToolkit().getScreenSize().height); System.out.println(screenWidth+""+screenHeight); } } class ScreenSize { private int screenWidth; private int screenHeight; public void setScreenWidth(int screenWidth) { this.screenWidth=screenWidth; } public void setScreenHeight(int screenHeight) { this.screenHeight=screenHeight; } public int getScreenWidth() { setScreenWidth((int)java.awt.Toolkit.getDefaultToolkit().getScreenSize.width); return screenWidth; } public int getScreenHeight() { setScreenHeight((int)java.awt.Toolkit.getDefaultToolkit.getScreenSize().height); return screenHeight; } } |
31. <jsp:include>和<%@ include%>的区别?动态包含和静态包含差异?
32. SQLServer
33. Svn创建仓库,URL设置,以及访问,创建用户,分组(分组规范,授权)
Server以及Linux系统都如何设置?
https://172.16.5.252:8443/svn/pers/trunk
34. 远程连接电脑的桌面外观设置
35. Svn Handshake failed
36. 分布式
37. 消息服务
38. 数据接入
39. Kafka
40. IDEA适用版本(2017.1.2)
没有注册机
41. jQuery包导入eclipse,Syntax error on token "catch", Identifier expected
42. Jsp:首页退出系统
<A id="loginOut" href=javascript:logout()>退出系统</A>
//退出系统方法 function logout() { //_confirm参数:1提示信息、2:终止操作执行js方法,3:确定操作执行js方法 _confirm('您确定要退出本系统吗?',null, function(){ location.href = '${baseurl}/logout.action'; } ) }
|
43. Redis
Redis是一个开源的,使用C语言编写,面向“键/值”(Key/Value)对类型数据的分布式NoSQL数据库系统,特点是高性能,持久存储,适应高并发的应用场景。因此,可以说Redis纯粹为应用而产生,它是一个高性能的key-value数据库,并且还提供了多种语言的API(包括我们的大C#)。
和Memcached类似,Redis支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)五种。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,Redis支持各种不同方式的排序。与Memcached一样,为了保证效率,数据都是缓存在内存中。区别的是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步(数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。)。
因此,Redis的出现,很大程度补偿了Memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。
Nosql:
1、满足以下“三高”需求
l 数据库高并发读写
l 海量数据的高效率存储和读写
l 数据库高可扩展性和高可用性
2、特点:
A:易扩展
去掉关系型数据库的关系型特性,数据之间无关系,这样很容易扩展,无形之中也给架构层面带来了可扩展的能力。
B:海量数据库,高性能
读写性能巨高,得益于数据的无关系性。
C:灵活的数据模型
无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式,而关系型数据库增删字段是非常麻烦的事情。
D:高可用性
在不太影响性能的情况下就可以方便的实现高可用架构。如HBase(Hadoop Database),Cassandra模型,通过复制模型也可以实现高可用。
关系型数据库ACID四性:
原子性、一致性、隔离性、持久性
44. Linux
l 系统结构
l 常用命令
l 命令释义
l 软件安装
45. Solr
基于Lucene的java搜索引擎服务器。
46. Lucene
47. 单点登录
48. 集群
49. 搜索工具
Everything搜索工具。
50. 一个java类, 默认有一个无参构造方法, 但是如果写了有参的构造方法后, 就没有了!如果还有用到无参的构造方法就必须手动写一个了!
51. po,bean,domain
反射
public class StartAlarmServer { public Logger _log = LoggerFactory.getLogger(StartAlarmServer.class);
public static StartAlarmServer sas = new StartAlarmServer() ; |
System.err.println
多线程
读取文件
52. Super()
先回答你题目的问题,super的作用。
super出现在继承了父类的子类中。有三种存在方式:
第一种
super.xxx;(xxx为变量名或对象名)
这种方法意义为,获取父类中的名字为xxx的变量或方法引用。
使用这种方法可以直接访问父类中的变量或对象,进行修改赋值等操作
第二种
super.xxx();(xxx为方法名)
这种方法意义为,直接访问并调用父类中的方法。
第三种
super();
这种方法意义为,调用父类的初始化方法,其实就是调用父类中的public xxx()方法
追问
第三种在写代码的时候可以省略吗.?
追答
看情况,比如说,你自己从新封装了jdk里面的HashMap类
public class MyMap extends HashMap
这时候,如果你想在实际应用中使用自己的类代替系统中原有的HashMap,就需要写如下代码
public MyMap(){
super();
}
这样,你自己写的类 MyMap map = new MyMap();才能使用
这样做的好处是,你可以不知道原来父类的初始化构造函数是怎么写的。
但是却可以轻易封装它。
作者:习惯沉淀
如果文中有误或对本文有不同的见解,欢迎在评论区留言。
如果觉得文章对你有帮助,请点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
扫码关注一线码农的学习见闻与思考。
回复"大数据","微服务","架构师","面试总结",获取更多学习资源!