中 使用ajaxComplete()方法
10.动态生成页面的元素有哪些
append插入 当前元素最后一个子节点后面 prepend插入 当前元素第一个子节点前面 after--在元素后追加 before--在元素前追加 inserAflter--同级插入到后面和追加到后面 isserBefore--同级追加到前面和插入到前面
input.name--添加 button.value--删除
使用jquery创建元素的语法----把动态内容放到数组中,在遍历数组动态创建html---使用模板
script
11.MySQL的存储方式
静态存储 动态存储:varchar 参数类型INOUT输入输出、IN输入、OUT输出
12.MySQL存储流程
变量定义 创建临时表 循环 变量赋值 程序调用 程序创建
13.数据库表与表之间的关联方式?有哪些区别
一对一:qq QQ空间 多对一、一对多: 部门员工 员工部门 多对多:双主键,双外键
14.外连接使用的什么类型?
左外连接---left join 右外连接---right join 主要用左连接
15.左外链接和右外链接的区别
两个表: A(id,name) 数据:(1,张三)(2,李四)(3,王五) B(id,name) 数据:(1,学生)(2,老师)(4,校长)
左连接结果: select A.,B. from A left join B on A.id=B.id; 1 张三 1 学生 2 李四 2 老师 3 王五 NULL NULL
右链接结果: select A.,B. from A right join B on A.id=B.id; 1 张三 1 学生 2 李四 2 老师 NULL NULL 4 校长
比如有两个表一个是用户表,一个是交易记录表,如果我要查询每个用户的交易记录就要用到左外外连接,因为不是每个用户都有交易记录。 用到左外连接后,有交易记录的信息就会显示,没有的就显示NULL,就像上面我举得例子一样。 如果不用外连接的话,比如【王五】没有交易记录的话,那么用户表里的【王五】的信息就不会显示,就失去了查询所有用户交易记录的意义了。
16.数据库索引会在什么情况下失效
条件中有or,即使其中有条件带索引也不会使用(少用or的原因)
like查询是%开头的(在后面加%)
如果类型是字符串,一定要在条件中将数据使用用引号引起来,否则不使用索引(查询字段没加引号)
全表扫描比使用索引快,则不用索引
17.:LinkList和ArrayList的区别
都是List,都是有序可重复的 ArrayList底层是数组,查询效率高,插入和删除效率低 LinkList底层是链表,查询效率低,插入和删除效率高
18.视图是什么
就是一个查询语句组成的虚拟表 创建语法:create view 视图名称 as 查询语句
19.接口中可以写实现类么
是可以写 ,但是不建议这么写 。 最后写个类
20.上传思路
前台页面以流的形式传递到后台servlet ---》form 表单里面的属性 enctype 覆写
后台servlet 解析这个文件流 ---》调方法 (上传文件工具类) a.先导包
把解析出来的流 写到一个文件夹里
21.javaScript
history对象 location(位置对象) navigator(浏览器信息对象) document对象
22.获取DOM元素的三种方式
方式一: document.getElementById(“id”); ----最常用 方式二: document.getElementsByName(“name”); ------通过名称获取元素 用下标取其中 方式三: document.getElementsByTagName(“input”); ------通过标签获取元素
23.讲一下什么是设计模式?常用的设计模式有哪些?
设计模式就是经过前人无数次的实践总结出的,设计过程中可以反复使用的、可以解决特定问题的设计方法。 单例(饱汉模式、饿汉模式) 1.构造方法私有化,让除了自己类中能创建外其他地方都不能创建 2.在自己的类中创建一个单实例(饱汉模式是一出来就创建单实例,而饿汉模式是需要的时候才创建) 3.提供一个方法获取该实例对象(创建时间需要进行方法同步) 工厂模式、代理模式、装饰者模式。
24.简单介绍一下Ajax?
Ajax--异步的javascript和xml 通过Ajax与服务器进行数据交换,Ajax可以使页面实现局部更新 HttpRequest对象,使用这个对象可以异步向服务器发送请求,获取响应,完成局部更新。
25.getparameter获取页面传递来参数
26JSON操作
直接取是取不出来的,下面是方式一、二 方式一jsonStr单双引号 都可以 方式二不可以 只支持双引号 JOSN.parse只是针对标准JSON格式key必须双引号包裹起来
JOSN数组
[{“name”:”张张”,”age”:”17”},{“name”:”张张”,”age”:”17”}] 多个对象一起使用
27.ajax
异步的javascript和xml组合起来 同步:一个操作1结束或者释放之后,另一个动作2才能进来,一个一个挨着执行 异步:一个操作1在执行过程,另外一个操作2也会执行, 不会等待操作1执行完
步骤
(1)创建XMLHttpRequest对象
//(1)创建一个xmlHttpRequest对象
var ajaxObj = createAjax();
(2)调用open建立method、url、async
//调用open建立method、url、async
ajaxObj.open("get","/getTime?date="+new Date(),true);
(3)监听状态响应结果
//监听状态响应结果
ajaxObj.onreadystatechange=function(){
if(ajaxObj.reaystate==4 && ajaxObj.status==200){
document.getElementById("myDiv").innerHTML=ajaxObj.responseText;
}
}
(4)发送
//发送
ajaxObj.send();
ajax核心
XMLHttpRequest核心对象 向服务器发送请求
28.多线程
实现多线程
1)继承Thread类 2)实现Runnable接口(继承扩展性不强,只支持单继承,如果继承Thread就不能在继承别的类了)
.start() 启动线程 .run() 运行线程 .wait() 等待阻塞 synchronized锁 关键字
thread.setName("设置一个线程名称"); 这样就可以区分线程
29.多态的好处
多态可以让我们不用关心某个对象到底是什么具体类型,就可以使用该对象的某些方法, 可扩展,添加新的子类,不影响已存类的多态性继承性
30.静态变量和实例变量的区别
静态要加static,实例不用 实例要创建对象后才可以通过这个对象使用,静态不用直接用类名来引用
31.进程和线程的主要区别
进程是操作系统资源分配的基本单位,线城市任务调度和执行的基本单位 进程是程序在某个数据集合上的一次运行活动;线程是进程中的一个执行路径。(进程可以创建多个线程) 一个进程里包线程。毎个进程都是一个独立的代码和数据空间,线程就是同一类线程共享代码和数据空间,线程必须依赖进程,进程可独立存在
32.java中Thread.sleep()和 Object.wait() 有什么区别?
第一:两个方法来自不同的类,一个是Thread类,一个是Object类 第二:sleep方法没有释放锁,而wait方法释放了锁 第三:wait,notify和notifyAll只能在同步控制块里面使用,sleep可以任何地方 第四:sleep必须要捕获异常,wait不需要
33.SQL语句查询重复和三表查询
select * from 表 where id in(select id from 表 group by id having cout(id) > 1)
34.说一下中间键的作用----mq(实现)
35.说一下get和post 的区别
36.说一下spring和springboot和springcloud三者的区别、作用、为什么用
37.说一下 java反射(用途、特点)
用途:1)获取反射中的Class对象2)通过反射创建对象 特点:很强大,灵活性避免写死 缺点:不能滥用
38.string和stringbuffer和stringbinkld区别
String是内容不可变的字符串。因为底层是有final修饰的 StringBuilder,StringBuffer是内容可以改变的字符串。 springbuilder是线程不安全的,效率高 Springbuffer是线程安全的,效率低
39.说一下集合有哪些?都有什么区别。ArrayList和Linkedlist那个更占空间,为什么
集合 List 是有序的,可以重复的 Set 是无序的,不可以重复的----重写(equals和hashcode方法 存储key-value的为map)
ArrayList底层使用是数组。LinkedList使用的是链表 ArrayList使用在查询比较 多,但是插入和删除比较少 LinkedList使用的查询比较少,但插入和删除比较多
40.spring的生命周期
41.线程的生命周期、线程的获取
新建:创建线程对象 没有执行资格就阻塞----操作可以阻塞,也可以放行激活,激活后运行 有执行资格就运行 最后结束死亡----变成垃圾等待回收
42.线程中两种阻塞的区别
线程睡眠:Thread.sleep方法 -----毫秒单位。线程阻塞 线程等待:Object类中wait()方法-------线程等待 。需要notify()唤醒方法 线程礼让:Thread.yield()方法 线程自闭:.join()方法
sleep()和wait()的区别 两者都是线程阻塞, sleep()是Thread类的方法;wait()是Object类的方法 sleep()必须指定时间;wait()可以指定时间也可以不指定 sleep()不释放同步锁;wait()释放同步锁 sleep()可以在任意地方使用;wait()只能在同步代码块或者同步代码方法中使用
43.给你一个id怎么获取东西(前段)
jquery 就是前段js部分用from表单
后台注解加方法接受。。getvalue.getParemter
request.getParemeter("username");
后台控制层(Controller):
@RequestMapping(value="/xxx/yyy")
public class formController{
@RequestMapping(value = "/zzz")
public String getValue(String name1){ //比如说要传到后台的是一个string类型的字符串
System.out.println(name1); //打印出的值就是前台input里填写的value值
//这时你就可以将接到的前台的值再传到service里从而对数据库进行操作等
return "/mmm/nnn/lll"; //在对数据进行操作以后,可以返回你想返回的页面,return后跟的就是页面的路径
}
}
44.string可不可以被继承?为什么
不可以 因为有final修饰
45.常出现的异常(5种)
空指针异常---NullPointerException
数据类型转换异常---ClassCastException
传递非法参数异常---IllegalArgumentException
算数异常---ArithmeticException
下标越界异常---IndexOutOfBoundsException
不支持的操作异常---UnsupportedOperationException
IO流异常---IOException
运行时异常---RuntimeException 异常try
46.Liunx常用命令
进入目录 返回上一级目录 返回上两级目录 显示工作路径 查看目录中的文件 创建名为test的文件 创建目录树 删除一个叫test1的文件 复制一个文件
文件搜索 挂载 显示权限 压缩一个dir1的文件
47.数据库中用过哪些东西
视图、查询
48.java中创建对象的方式
1)new 2)反射 3)克隆
49.shiro的实现思路
50.es实现思路
51.redis的实现思路
52.Spring事务的传播特性
PROPAGATION_REQUIRED 如果没有,就开启一个事务;如果有,就加入当前事务(方法B看到自己已经运行在 方法A的事务内部,就不再起新的事务,直接加入方法A)
RROPAGATION_REQUIRES_NEW 如果没有,就开启一个事务;如果有,就将当前事务挂起。(方法A所在的事务就会挂起,方法B会起一个新的事务,等待方法B的事务完成以后,方法A才继续执行)
PROPAGATION_NESTED 如果没有,就开启一个事务;如果有,就在当前事务中嵌套其他事务
PROPAGATION_SUPPORTS 如果没有,就以非事务方式执行;如果有,就加入当前事务(方法B看到自己已经运行在 方法A的事务内部,就不再起新的事务,直接加入方法A)
PROPAGATION_NOT_SUPPORTED 如果没有,就以非事务方式执行;如果有,就将当前事务挂起,(方法A所在的事务就会挂起,而方法B以非事务的状态运行完,再继续方法A的事务)
PROPAGATION_NEVER 如果没有,就以非事务方式执行;如果有,就抛出异常。
PROPAGATION_MANDATORY 如果没有,就抛出异常;如果有,就使用当前事务
53.Spring中IOC的原理和AOP原理
IOC控制反转。原来自己创建DAO,现在Spring帮你 配置文件+反射+map
AOP面向切面编程 使用动态代理的设计模式在执行方法前后切入相关逻辑
54.servlet生命周期
加载class---实例化----初始化init----响应请求-----关闭
55.springmvc的执行流程
56.hashmap实现原理、数据结构、底层
57.SpringMVC中conterllor和Res的区别
58.mysql中索引有哪些
59.set和list的区别
set 不允许重复,无序 list 允许重复,有序
60.jdbc中批量写入 用什么方式效率最高
61.mybatis中#和$的区别
62.static介绍
它定义在函数的内部,只能在定义它的函数内部使用.属于静态存储方式 静态变量可以直接通过类访问,不用创建对象。 静态变量只在初始化的时候执行一次。
63.es和lucene的区别
64.负载均衡有哪些算法
随机、轮回
65.单点登陆是怎么实现的
通过jsonp方式回调返回凭证实现(可以跨域)、(或者Cookie不能跨域) 已返回验证后的token值进行效验
66.浏览器缓存
67.SpringMVC中芯处理器 Dis怎么分发的?里面有几个方法
68.将类实例化的方式
Object.getClass() Class.forName() new 反射 调用对象的clone()方法 io流 工厂 如:String a = String.valueOf(123);
69.通信协议 HTTP TCP
70.包装类和基本类的区别
1.集合不允许存放基本类型数据,只能存放引用类型数据,比如包装类型 2.基本类型和包装类之间可以相互转换,自动装箱拆箱
71.equery和==的区别
== 用来判断两个变量之间的值是否相等。分为基本数据类型变量和引用类型 如果是基本数据类型的变量就直接比较值 如果是引用类型就比较对应的引用的内存的首地址
equery 用来比较两个对象长得是否一样。判断两个对象的某些特征是否一样。
72.shiro实现了那些接口(主要的那几个)
Subject SecurityManager Realm
sessionManager Authenticator Cryptography
73.mybatis有那些标签 xml
74.事务无法回滚怎么解决?怎么控制事务?
将service层改用xml配置,其实这样做也是变相的让springmvc无法扫描service,而只能依赖父窗口也就是ServletContextListener来进行初始化,这样同样被赋予了事务性。
75.遇到异常怎么处理,处理方式
分析是上层的还是什么的,我这边的就记录,try,分析 不是 我的就抛
76.么情况会发生线程问题
涉及到数据共享及数据的修改的情况下都要考虑线程安全
77.# Thread和Runnable的区别
实现多线程有两种手段: 1)继承Thread类 2)实现Runable接口
实现Runnable接口比继承Thread类所具有的优势 1)适合多个相同的程序代码的线程去处理同一个资源 2)可以避免java中的单继承的限制 3)增加程序的健壮性,代码可以被多个线程共享,代码和数据独立
78.把对象转出json字符串 用到什么工具
json工具类.... .方法就可以
把java 对象列表转换为json对象数组,并转为字符串 JSONArray array = JSONArray.fromObject(list); String jsonstr = array.toString();
把java对象转换成json对象,并转化为字符串 JSONObject object = JSONObject.fromObject(user); Log4jInit.ysulogger.debug(object.toString());
3.把JSON字符串转换为JAVA 对象数组 JSONArray json = JSONArray.fromObject(userStr);//userStr是json字符串 List users= (List)JSONArray.toCollection(json, User.class);
4.把JSON字符串转换为JAVA 对象 JSONObject jsonobject = JSONObject.fromObject(jsonStr); User user= (User)JSONObject.toBean(object,User.class);
79.mysql中分组的关键字、去重的关键字
分组:group by 排序:order by 平均值:avg 求和:sum 记录条数:count 最大最小值:max/min 模糊匹配:like 去重:distinct
增:insert 删:delete 改:update 查:select
80.# jQuery中对未来的元素绑定事件
用live()/.on
81.jdbc手写链接有几步?是什么
1)加载数据----2)获取连接----3)设置参数----4)执行----5)释放连接
82.maven打包用的什么命令
1、cmd--》c:\users\administrator-->mvn -version先看一下maven安装是否成功,环境变量是否配置正确
2、cd至需要打包的项目的路径处:cd D:\xx\work\xxx\hfqnc123\smtkMaven
3、然后在项目的路径下就可以使用maven命令:mvn package,mvn deploy等命令来对项目进行打包,部署
83.es的存储结构
84.mq在项目中的作用是什么
1.分布式服务间的异步通信 2.对Dubbo服务间的调用进行解耦 3.通过异步提高程序响应速度
异步通讯、解耦、并发缓冲
85.es属于什么数据库?什么类型的 数据库
Elasticsearch是非关系型数据库。
86.es和lucene的 区别
Elasticsearch基于Lucene构建,Elasticsearch利用Lucene做实际的工作。
87.FastDFSdfs使用优势
1)高可靠性,无单点故障 2)支持在线扩容,支持主从文件 3)解决大数据存储和负载均衡问题(中小文件适合) 4)只能通过专用的API访问,降低复杂度,处理效率高 5)存储上传文件和os文件系统中的文件一一对应
88.controller控制层的注解
@ControllerSpringmvc ---- 处理http请求 RestController ----- 返回json格式的数据 @GetMapping ---- 获得Get请求 @PostMapping(“/add”) 的作用是获得POST请求 @Autowired 和@Resource 都是注入bean,区别有待研究 @RequestMapping----路径
89.controller 和Requestcontroller 的区别
都是用来表示Spring某个类的是否可以接收HTTP请求
@RestController是@Controller和@ResponseBody的结合体,两个标注合并起来的作用在类开头上注明,作用是返回类中所有@RequestMapping(“”) 方法 的结果
一个是返回http,一个是返回json
90.crm实际业务
91.Springcloud服务之间相互调用
92.商品中一共有几个服务
93.
94.
95.
96.
97.
98.
99.
100.
你可能感兴趣的:(java面试100题)
Long类型前后端数据不一致
igotyback
前端
响应给前端的数据浏览器控制台中response中看到的Long类型的数据是正常的到前端数据不一致前后端数据类型不匹配是一个常见问题,尤其是当后端使用Java的Long类型(64位)与前端JavaScript的Number类型(最大安全整数为2^53-1,即16位)进行数据交互时,很容易出现精度丢失的问题。这是因为JavaScript中的Number类型无法安全地表示超过16位的整数。为了解决这个问
LocalDateTime 转 String
igotyback
java 开发语言
importjava.time.LocalDateTime;importjava.time.format.DateTimeFormatter;publicclassMain{publicstaticvoidmain(String[]args){//获取当前时间LocalDateTimenow=LocalDateTime.now();//定义日期格式化器DateTimeFormatterformat
Linux下QT开发的动态库界面弹出操作(SDL2)
13jjyao
QT类 qt 开发语言 sdl2 linux
需求:操作系统为linux,开发框架为qt,做成需带界面的qt动态库,调用方为java等非qt程序难点:调用方为java等非qt程序,也就是说调用方肯定不带QApplication::exec(),缺少了这个,QTimer等事件和QT创建的窗口将不能弹出(包括opencv也是不能弹出);这与qt调用本身qt库是有本质的区别的思路:1.调用方缺QApplication::exec(),那么我们在接口
DIV+CSS+JavaScript技术制作网页(旅游主题网页设计与制作)云南大理
STU学生网页设计
网页设计 期末网页作业 html静态网页 html5期末大作业 网页设计 web大作业
️精彩专栏推荐作者主页:【进入主页—获取更多源码】web前端期末大作业:【HTML5网页期末作业(1000套)】程序员有趣的告白方式:【HTML七夕情人节表白网页制作(110套)】文章目录二、网站介绍三、网站效果▶️1.视频演示2.图片演示四、网站代码HTML结构代码CSS样式代码五、更多源码二、网站介绍网站布局方面:计划采用目前主流的、能兼容各大主流浏览器、显示效果稳定的浮动网页布局结构。网站程
【华为OD机试真题2023B卷 JAVA&JS】We Are A Team
若博豆
java 算法 华为 javascript
华为OD2023(B卷)机试题库全覆盖,刷题指南点这里WeAreATeam时间限制:1秒|内存限制:32768K|语言限制:不限题目描述:总共有n个人在机房,每个人有一个标号(1<=标号<=n),他们分成了多个团队,需要你根据收到的m条消息判定指定的两个人是否在一个团队中,具体的:1、消息构成为:abc,整数a、b分别代
关于城市旅游的HTML网页设计——(旅游风景云南 5页)HTML+CSS+JavaScript
二挡起步
web前端期末大作业 javascript html css 旅游 风景
⛵源码获取文末联系✈Web前端开发技术描述网页设计题材,DIV+CSS布局制作,HTML+CSS网页设计期末课程大作业|游景点介绍|旅游风景区|家乡介绍|等网站的设计与制作|HTML期末大学生网页设计作业,Web大学生网页HTML:结构CSS:样式在操作方面上运用了html5和css3,采用了div+css结构、表单、超链接、浮动、绝对定位、相对定位、字体样式、引用视频等基础知识JavaScrip
HTML网页设计制作大作业(div+css) 云南我的家乡旅游景点 带文字滚动
二挡起步
web前端期末大作业 web设计网页规划与设计 html css javascript dreamweaver 前端
Web前端开发技术描述网页设计题材,DIV+CSS布局制作,HTML+CSS网页设计期末课程大作业游景点介绍|旅游风景区|家乡介绍|等网站的设计与制作HTML期末大学生网页设计作业HTML:结构CSS:样式在操作方面上运用了html5和css3,采用了div+css结构、表单、超链接、浮动、绝对定位、相对定位、字体样式、引用视频等基础知识JavaScript:做与用户的交互行为文章目录前端学习路线
node.js学习
小猿L
node.js node.js 学习 vim
node.js学习实操及笔记温故node.js,node.js学习实操过程及笔记~node.js学习视频node.js官网node.js中文网实操笔记githubcsdn笔记为什么学node.js可以让别人访问我们编写的网页为后续的框架学习打下基础,三大框架vuereactangular离不开node.jsnode.js是什么官网:node.js是一个开源的、跨平台的运行JavaScript的运行
Java 重写(Override)与重载(Overload)
叨唧唧的
Java重写(Override)与重载(Overload)重写(Override)重写是子类对父类的允许访问的方法的实现过程进行重新编写,返回值和形参都不能改变。即外壳不变,核心重写!重写的好处在于子类可以根据需要,定义特定于自己的行为。也就是说子类能够根据需要实现父类的方法。重写方法不能抛出新的检查异常或者比被重写方法申明更加宽泛的异常。例如:父类的一个方法申明了一个检查异常IOExceptio
简单了解 JVM
记得开心一点啊
jvm
目录♫什么是JVM♫JVM的运行流程♫JVM运行时数据区♪虚拟机栈♪本地方法栈♪堆♪程序计数器♪方法区/元数据区♫类加载的过程♫双亲委派模型♫垃圾回收机制♫什么是JVMJVM是JavaVirtualMachine的简称,意为Java虚拟机。虚拟机是指通过软件模拟的具有完整硬件功能的、运行在一个完全隔离的环境中的完整计算机系统(如:JVM、VMwave、VirtualBox)。JVM和其他两个虚拟机
1分钟解决 -bash: mvn: command not found,在Centos 7中安装Maven
Energet!c
开发语言
1分钟解决-bash:mvn:commandnotfound,在Centos7中安装Maven检查Java环境1下载Maven2解压Maven3配置环境变量4验证安装5常见问题与注意事项6总结检查Java环境Maven依赖Java环境,请确保系统已经安装了Java并配置了环境变量。可以通过以下命令检查:java-version如果未安装,请先安装Java。1下载Maven从官网下载:前往Apach
Java企业面试题3
马龙强_
java
1.break和continue的作用(智*图)break:用于完全退出一个循环(如for,while)或一个switch语句。当在循环体内遇到break语句时,程序会立即跳出当前循环体,继续执行循环之后的代码。continue:用于跳过当前循环体中剩余的部分,并开始下一次循环。如果是在for循环中使用continue,则会直接进行条件判断以决定是否执行下一轮循环。2.if分支语句和switch分
JVM、JRE和 JDK:理解Java开发的三大核心组件
Y雨何时停T
Java java
Java是一门跨平台的编程语言,它的成功离不开背后强大的运行环境与开发工具的支持。在Java的生态中,JVM(Java虚拟机)、JRE(Java运行时环境)和JDK(Java开发工具包)是三个至关重要的核心组件。本文将探讨JVM、JDK和JRE的区别,帮助你更好地理解Java的运行机制。1.JVM:Java虚拟机(JavaVirtualMachine)什么是JVM?JVM,即Java虚拟机,是Ja
Java面试题精选:消息队列(二)
芒果不是芒
Java面试题精选 java kafka
一、Kafka的特性1.消息持久化:消息存储在磁盘,所以消息不会丢失2.高吞吐量:可以轻松实现单机百万级别的并发3.扩展性:扩展性强,还是动态扩展4.多客户端支持:支持多种语言(Java、C、C++、GO、)5.KafkaStreams(一个天生的流处理):在双十一或者销售大屏就会用到这种流处理。使用KafkaStreams可以快速的把销售额统计出来6.安全机制:Kafka进行生产或者消费的时候会
白骑士的Java教学基础篇 2.5 控制流语句
白骑士所长
Java 教学 java 开发语言
欢迎继续学习Java编程的基础篇!在前面的章节中,我们了解了Java的变量、数据类型和运算符。接下来,我们将探讨Java中的控制流语句。控制流语句用于控制程序的执行顺序,使我们能够根据特定条件执行不同的代码块,或重复执行某段代码。这是编写复杂程序的基础。通过学习这一节内容,你将掌握如何使用条件语句和循环语句来编写更加灵活和高效的代码。条件语句条件语句用于根据条件的真假来执行不同的代码块。if语句‘
python语法——三目运算符
HappyRocking
python python 三目运算符
在java中,有三目运算符,如:intc=(a>b)?a:b表示c取两者中的较大值。但是在python,不能直接这样使用,估计是因为冒号在python有分行的关键作用。那么在python中,如何实现类似功能呢?可以使用ifelse语句,也是一行可以完成,格式为:aifbelsec表示如果b为True,则表达式等于a,否则等于c。如:c=(aif(a>b)elseb)同样是完成了取最大值的功能。
ArrayList 源码解析
程序猿进阶
Java基础 ArrayList List java 面试 性能优化 架构设计 idea
ArrayList是Java集合框架中的一个动态数组实现,提供了可变大小的数组功能。它继承自AbstractList并实现了List接口,是顺序容器,即元素存放的数据与放进去的顺序相同,允许放入null元素,底层通过数组实现。除该类未实现同步外,其余跟Vector大致相同。每个ArrayList都有一个容量capacity,表示底层数组的实际大小,容器内存储元素的个数不能多于当前容量。当向容器中添
Java爬虫框架(一)--架构设计
狼图腾-狼之传说
java 框架 java 任务 html解析器 存储 电子商务
一、架构图那里搜网络爬虫框架主要针对电子商务网站进行数据爬取,分析,存储,索引。爬虫:爬虫负责爬取,解析,处理电子商务网站的网页的内容数据库:存储商品信息索引:商品的全文搜索索引Task队列:需要爬取的网页列表Visited表:已经爬取过的网页列表爬虫监控平台:web平台可以启动,停止爬虫,管理爬虫,task队列,visited表。二、爬虫1.流程1)Scheduler启动爬虫器,TaskMast
Java:爬虫框架
dingcho
Java java 爬虫
一、ApacheNutch2【参考地址】Nutch是一个开源Java实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。Nutch致力于让每个人能很容易,同时花费很少就可以配置世界一流的Web搜索引擎.为了完成这一宏伟的目标,Nutch必须能够做到:每个月取几十亿网页为这些网页维护一个索引对索引文件进行每秒上千次的搜索提供高质量的搜索结果简单来说Nutch支持分
python怎么将png转为tif_png转tif
weixin_39977276
发国外的文章要求图片是tif,cmyk色彩空间的。大小尺寸还有要求。比如网上大神多,找到了一段代码,感谢!https://www.jianshu.com/p/ec2af4311f56https://github.com/KevinZc007/image2Tifimportjava.awt.image.BufferedImage;importjava.io.File;importjava.io.Fi
JavaScript 中,深拷贝(Deep Copy)和浅拷贝(Shallow Copy)
跳房子的前端
前端面试 javascript 开发语言 ecmascript
在JavaScript中,深拷贝(DeepCopy)和浅拷贝(ShallowCopy)是用于复制对象或数组的两种不同方法。了解它们的区别和应用场景对于避免潜在的bugs和高效地处理数据非常重要。以下是对深拷贝和浅拷贝的详细解释,包括它们的概念、用途、优缺点以及实现方式。1.浅拷贝(ShallowCopy)概念定义:浅拷贝是指创建一个新的对象或数组,其中包含了原对象或数组的基本数据类型的值和对引用数
JAVA·一个简单的登录窗口
MortalTom
java 开发语言 学习
文章目录概要整体架构流程技术名词解释技术细节资源概要JavaSwing是Java基础类库的一部分,主要用于开发图形用户界面(GUI)程序整体架构流程新建项目,导入sql.jar包(链接放在了文末),编译项目并运行技术名词解释一、特点丰富的组件提供了多种可视化组件,如按钮(JButton)、文本框(JTextField)、标签(JLabel)、下拉列表(JComboBox)等,可以满足不同的界面设计
WebMagic:强大的Java爬虫框架解析与实战
Aaron_945
Java java 爬虫 开发语言
文章目录引言官网链接WebMagic原理概述基础使用1.添加依赖2.编写PageProcessor高级使用1.自定义Pipeline2.分布式抓取优点结论引言在大数据时代,网络爬虫作为数据收集的重要工具,扮演着不可或缺的角色。Java作为一门广泛使用的编程语言,在爬虫开发领域也有其独特的优势。WebMagic是一个开源的Java爬虫框架,它提供了简单灵活的API,支持多线程、分布式抓取,以及丰富的
博客网站制作教程
2401_85194651
java maven
首先就是技术框架:后端:Java+SpringBoot数据库:MySQL前端:Vue.js数据库连接:JPA(JavaPersistenceAPI)1.项目结构blog-app/├──backend/│├──src/main/java/com/example/blogapp/││├──BlogApplication.java││├──config/│││└──DatabaseConfig.java
00. 这里整理了最全的爬虫框架(Java + Python)
有一只柴犬
爬虫系列 爬虫 java python
目录1、前言2、什么是网络爬虫3、常见的爬虫框架3.1、java框架3.1.1、WebMagic3.1.2、Jsoup3.1.3、HttpClient3.1.4、Crawler4j3.1.5、HtmlUnit3.1.6、Selenium3.2、Python框架3.2.1、Scrapy3.2.2、BeautifulSoup+Requests3.2.3、Selenium3.2.4、PyQuery3.2
JAVA学习笔记之23种设计模式学习
victorfreedom
Java技术 设计模式 android java 常用设计模式
博主最近买了《设计模式》这本书来学习,无奈这本书是以C++语言为基础进行说明,整个学习流程下来效率不是很高,虽然有的设计模式通俗易懂,但感觉还是没有充分的掌握了所有的设计模式。于是博主百度了一番,发现有大神写过了这方面的问题,于是博主迅速拿来学习。一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器
JavaScript `Map` 和 `WeakMap`详细解释
跳房子的前端
JavaScript 原生方法 javascript 前端 开发语言
在JavaScript中,Map和WeakMap都是用于存储键值对的数据结构,但它们有一些关键的不同之处。MapMap是一种可以存储任意类型的键值对的集合。它保持了键值对的插入顺序,并且可以通过键快速查找对应的值。Map提供了一些非常有用的方法和属性来操作这些数据对:set(key,value):将一个键值对添加到Map中。如果键已经存在,则更新其对应的值。get(key):获取指定键的值。如果键
切换淘宝最新npm镜像源是
hai40587
npm 前端 node.js
切换淘宝最新npm镜像源是一个相对简单的过程,但首先需要明确当前淘宝npm镜像源的状态和最新的镜像地址。由于网络环境和服务更新,镜像源的具体地址可能会发生变化,因此,我将基于当前可获取的信息,提供一个通用的切换步骤,并附上最新的镜像地址(截至回答时)。一、了解npm镜像源npm(NodePackageManager)是JavaScript的包管理器,用于安装、更新和管理项目依赖。由于npm官方仓库
【Java】已解决:java.util.concurrent.CompletionException
屿小夏
java 开发语言
文章目录一、分析问题背景出现问题的场景代码片段二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项已解决:java.util.concurrent.CompletionException一、分析问题背景在Java并发编程中,java.util.concurrent.CompletionException是一种常见的运行时异常,通常在使用CompletableFuture进行异步计算时出现
设计模式之建造者模式(通俗易懂--代码辅助理解【Java版】)
ok!ko
设计模式 设计模式 建造者模式 java
文章目录设计模式概述1、建造者模式2、建造者模式使用场景3、优点4、缺点5、主要角色6、代码示例:1)实现要求2)UML图3)实现步骤:1)创建一个表示食物条目和食物包装的接口2)创建实现Packing接口的实体类3)创建实现Item接口的抽象类,该类提供了默认的功能4)创建扩展了Burger和ColdDrink的实体类5)创建一个Meal类,带有上面定义的Item对象6)创建一个MealBuil
Enum 枚举
120153216
enum 枚举
原文地址:http://www.cnblogs.com/Kavlez/p/4268601.html Enumeration
于Java 1.5增加的enum type...enum type是由一组固定的常量组成的类型,比如四个季节、扑克花色。在出现enum type之前,通常用一组int常量表示枚举类型。比如这样:
public static final int APPLE_FUJI = 0
Java8简明教程
bijian1013
java jdk1.8
Java 8已于2014年3月18日正式发布了,新版本带来了诸多改进,包括Lambda表达式、Streams、日期时间API等等。本文就带你领略Java 8的全新特性。
一.允许在接口中有默认方法实现
Java 8 允许我们使用default关键字,为接口声明添
Oracle表维护 快速备份删除数据
cuisuqiang
oracle 索引 快速 备份 删除
我知道oracle表分区,不过那是数据库设计阶段的事情,目前是远水解不了近渴。
当前的数据库表,要求保留一个月数据,且表存在大量录入更新,不存在程序删除。
为了解决频繁查询和更新的瓶颈,我在oracle内根据需要创建了索引。但是随着数据量的增加,一个半月数据就要超千万,此时就算有索引,对高并发的查询和更新来说,让然有所拖累。
为了解决这个问题,我一般一个月会进行一次数据库维护,主要工作就是备
java多态内存分析
麦田的设计者
java 内存分析 多态原理 接口和抽象类
“ 时针如果可以回头,熟悉那张脸,重温嬉戏这乐园,墙壁的松脱涂鸦已经褪色才明白存在的价值归于记忆。街角小店尚存在吗?这大时代会不会牵挂,过去现在花开怎么会等待。
但有种意外不管痛不痛都有伤害,光阴远远离开,那笑声徘徊与脑海。但这一秒可笑不再可爱,当天心
Xshell实现Windows上传文件到Linux主机
被触发
windows
经常有这样的需求,我们在Windows下载的软件包,如何上传到远程Linux主机上?还有如何从Linux主机下载软件包到Windows下;之前我的做法现在看来好笨好繁琐,不过也达到了目的,笨人有本方法嘛;
我是怎么操作的:
1、打开一台本地Linux虚拟机,使用mount 挂载Windows的共享文件夹到Linux上,然后拷贝数据到Linux虚拟机里面;(经常第一步都不顺利,无法挂载Windo
类的加载ClassLoader
肆无忌惮_
ClassLoader
类加载器ClassLoader是用来将java的类加载到虚拟机中,类加载器负责读取class字节文件到内存中,并将它转为Class的对象(类对象),通过此实例的 newInstance()方法就可以创建出该类的一个对象。
其中重要的方法为findClass(String name)。
如何写一个自己的类加载器呢?
首先写一个便于测试的类Student
html5写的玫瑰花
知了ing
html5
<html>
<head>
<title>I Love You!</title>
<meta charset="utf-8" />
</head>
<body>
<canvas id="c"></canvas>
google的ConcurrentLinkedHashmap源代码解析
矮蛋蛋
LRU
原文地址:
http://janeky.iteye.com/blog/1534352
简述
ConcurrentLinkedHashMap 是google团队提供的一个容器。它有什么用呢?其实它本身是对
ConcurrentHashMap的封装,可以用来实现一个基于LRU策略的缓存。详细介绍可以参见
http://code.google.com/p/concurrentlinke
webservice获取访问服务的ip地址
alleni123
webservice
1. 首先注入javax.xml.ws.WebServiceContext,
@Resource
private WebServiceContext context;
2. 在方法中获取交换请求的对象。
javax.xml.ws.handler.MessageContext mc=context.getMessageContext();
com.sun.net.http
菜鸟的java基础提升之道——————>是否值得拥有
百合不是茶
1,c++,java是面向对象编程的语言,将万事万物都看成是对象;java做一件事情关注的是人物,java是c++继承过来的,java没有直接更改地址的权限但是可以通过引用来传值操作地址,java也没有c++中繁琐的操作,java以其优越的可移植型,平台的安全型,高效性赢得了广泛的认同,全世界越来越多的人去学习java,我也是其中的一员
java组成:
通过修改Linux服务自动启动指定应用程序
bijian1013
linux
Linux中修改系统服务的命令是chkconfig (check config),命令的详细解释如下: chkconfig
功能说明:检查,设置系统的各种服务。
语 法:chkconfig [ -- add][ -- del][ -- list][系统服务] 或 chkconfig [ -- level <</SPAN>
spring拦截器的一个简单实例
bijian1013
java spring 拦截器 Interceptor
Purview接口
package aop;
public interface Purview {
void checkLogin();
}
Purview接口的实现类PurviesImpl.java
package aop;
public class PurviewImpl implements Purview {
public void check
[Velocity二]自定义Velocity指令
bit1129
velocity
什么是Velocity指令
在Velocity中,#set,#if, #foreach, #elseif, #parse等,以#开头的称之为指令,Velocity内置的这些指令可以用来做赋值,条件判断,循环控制等脚本语言必备的逻辑控制等语句,Velocity的指令是可扩展的,即用户可以根据实际的需要自定义Velocity指令
自定义指令(Directive)的一般步骤
&nbs
【Hive十】Programming Hive学习笔记
bit1129
programming
第二章 Getting Started
1.Hive最大的局限性是什么?一是不支持行级别的增删改(insert, delete, update)二是查询性能非常差(基于Hadoop MapReduce),不适合延迟小的交互式任务三是不支持事务2. Hive MetaStore是干什么的?Hive persists table schemas and other system metadata.
nginx有选择性进行限制
ronin47
nginx 动静 限制
http {
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;...
server {...
location ~.*\.(gif|png|css|js|icon)$ {
java-4.-在二元树中找出和为某一值的所有路径 .
bylijinnan
java
/*
* 0.use a TwoWayLinkedList to store the path.when the node can't be path,you should/can delete it.
* 1.curSum==exceptedSum:if the lastNode is TreeNode,printPath();delete the node otherwise
Netty学习笔记
bylijinnan
java netty
本文是阅读以下两篇文章时:
http://seeallhearall.blogspot.com/2012/05/netty-tutorial-part-1-introduction-to.html
http://seeallhearall.blogspot.com/2012/06/netty-tutorial-part-15-on-channel.html
我的一些笔记
===
js获取项目路径
cngolon
js
//js获取项目根路径,如: http://localhost:8083/uimcardprj
function getRootPath(){
//获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
var curWwwPath=window.document.locati
oracle 的性能优化
cuishikuan
oracle SQL Server
在网上搜索了一些Oracle性能优化的文章,为了更加深层次的巩固[边写边记],也为了可以随时查看,所以发表这篇文章。
1.ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前,那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾。(这点本人曾经做过实例验证过,的确如此哦!
Shell变量和数组使用详解
daizj
linux shell 变量 数组
Shell 变量
定义变量时,变量名不加美元符号($,PHP语言中变量需要),如:
your_name="w3cschool.cc"
注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)。
中间不能有空格,可以使用下划线(_)。
不能使用标点符号。
不能使用ba
编程中的一些概念,KISS、DRY、MVC、OOP、REST
dcj3sjt126com
REST
KISS、DRY、MVC、OOP、REST (1)KISS是指Keep It Simple,Stupid(摘自wikipedia),指设计时要坚持简约原则,避免不必要的复杂化。 (2)DRY是指Don't Repeat Yourself(摘自wikipedia),特指在程序设计以及计算中避免重复代码,因为这样会降低灵活性、简洁性,并且可能导致代码之间的矛盾。 (3)OOP 即Object-Orie
[Android]设置Activity为全屏显示的两种方法
dcj3sjt126com
Activity
1. 方法1:AndroidManifest.xml 里,Activity的 android:theme 指定为" @android:style/Theme.NoTitleBar.Fullscreen" 示例: <application
solrcloud 部署方式比较
eksliang
solrCloud
solrcloud 的部署其实有两种方式可选,那么我们在实践开发中应该怎样选择呢? 第一种:当启动solr服务器时,内嵌的启动一个Zookeeper服务器,然后将这些内嵌的Zookeeper服务器组成一个集群。 第二种:将Zookeeper服务器独立的配置一个集群,然后将solr交给Zookeeper进行管理
谈谈第一种:每启动一个solr服务器就内嵌的启动一个Zoo
Java synchronized关键字详解
gqdy365
synchronized
转载自:http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html
多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。
同步机制可以使用synchronized关键字实现。
当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。
当s
js实现登录时记住用户名
hw1287789687
记住我 记住密码 cookie 记住用户名 记住账号
在页面中如何获取cookie值呢?
如果是JSP的话,可以通过servlet的对象request 获取cookie,可以
参考:http://hw1287789687.iteye.com/blog/2050040
如果要求登录页面是html呢?html页面中如何获取cookie呢?
直接上代码了
页面:loginInput.html
代码:
<!DOCTYPE html PUB
开发者必备的 Chrome 扩展
justjavac
chrome
Firebug:不用多介绍了吧https://chrome.google.com/webstore/detail/bmagokdooijbeehmkpknfglimnifench
ChromeSnifferPlus:Chrome 探测器,可以探测正在使用的开源软件或者 js 类库https://chrome.google.com/webstore/detail/chrome-sniffer-pl
算法机试题
李亚飞
java 算法 机试题
在面试机试时,遇到一个算法题,当时没能写出来,最后是同学帮忙解决的。
这道题大致意思是:输入一个数,比如4,。这时会输出:
&n
正确配置Linux系统ulimit值
字符串
ulimit
在Linux下面部 署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题;这个值也会影响服务器的最大并发数,其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用 其实很容易就达到这个数量。下面说的是,如何通过正解配置来改正这个系统默认值。因为这个问题是我配置Nginx+php5时遇到了,所以我将这篇归纳进
hibernate调用返回游标的存储过程
Supanccy2013
java DAO oracle Hibernate jdbc
注:原创作品,转载请注明出处。
上篇博文介绍的是hibernate调用返回单值的存储过程,本片博文说的是hibernate调用返回游标的存储过程。
此此扁博文的存储过程的功能相当于是jdbc调用select 的作用。
1,创建oracle中的包,并在该包中创建的游标类型。
---创建oracle的程
Spring 4.2新特性-更简单的Application Event
wiselyman
application
1.1 Application Event
Spring 4.1的写法请参考10点睛Spring4.1-Application Event
请对比10点睛Spring4.1-Application Event
使用一个@EventListener取代了实现ApplicationListener接口,使耦合度降低;
1.2 示例
包依赖
<p