5.9 关于js 的json问题

首先是两个概念:json字符串=’{“xx”:xx,”xx”:xx}’

json 对象={“xxx”:xx,”xx”:xx}

1:两者是如何转化的:(需要添加json.js)

Json字符串-》json对象:JSON.parse(jsonStr);jsonStr.parse();eval(‘(‘+jsonStr+’)’)

Json对象-》json字符串:jsonObj.toJSONString();JSON.stringify(jsonObj);

2:

VarjsonObj = {“persons”:[{“name”:”xx”,”sex”:man}]}

数组最后添加一条记录:

Var person = {“name”:”yaoming”,”sex”:man}

jsonObj.persons.push(person);//添加一条记录

jsonObj.persons.pop();//删除最后一条记录

5.9:关于innerHtml,outerHtml,innerText 的区别

1:innerHtml: innerHTML是用来获取元素内的html内容和文本.

2:outerHtml: outerHTML可以用来更改或获取元素内所有的html和文本内容,包含引用该方法元素自身的卷标.

3:innerText:获得标签内的文本;

5.9:下面一段代码是关于window.parent和window.opener区别 来讲的,我们如果要用到iframe的值传到另一框架就要用到window.opener.document.getElementById(name).value= uvalue;这种形式哦。

window.parent能获取一个框架的父窗口或父框架。顶层窗口的parent引用的是它本身。

可以用这一点特性来判断这个窗口是否是顶层窗口

5.9:/jquery.selectseach.min.js:智能select文本搜索插件;

注意select 需要添加:m=”search”

$(document).ready(function(){

$(‘#selectId’).selectseach();

})

5.9: functiongetOffsetTop (el, p) {
    var _t = el.offsetTop;     //将该连接对象的相对父容器的TOP偏移量赋给_t
    while (el = el.offsetParent) {     //这里的这句表达式,要完成的功能是判断el的父容器是否存在,如果是null的话,那么el在这里面就会被执行成false;
        if (el == p) break;  //这里就是一般的对比了,判断el和P是不是一样的,如果是一样的调处while
        _t += el.offsetTop;   //对_t累加,得到一个_t
    }

return _t;
}

5.9:关于如何设计一个联想控件:

1:首先把所有记录取出来:以json的形式;

初始化json的sname属性(根据json的某个属性对应而来)

比如:设置一个拼音对应汉字的集合-》产生一个汉字对应的开始大写字母(徐超—>XC)

2:当在输入框输入值时候(obj.onfocus = xxxfunction())

3:关于xxxfunction();根据输入的字符(已经根据拼音对应获得的首字大写)长度来截取json[i].sname.str(i,输入字符长度);

4:当符合要求的时候将json的对应属性放到下拉列表中(如下);

关于下拉显示框的设置:

1:确定位置:showObj.offsetTop = obj.offsetHight + getTop(obj);

showObj.offsetLeft = getLeft(obj);

getTop(obj){

var tops = 0;

el = obj;

while(el){

tops = tops + el.offsetTop;

el = el.offsetParent;

}

Return tops;

}

getLeft(obj){

var lefts = 0;

el = obj;

while(el){

lefts = lefts + el.offsetLeft;

el = el.offsetParent;

}

Return lefts;

}

@NamedQuery

在使用 JPA 持续性提供程序的应用程序中,可以使用实体管理器动态创建和执行查询,也可以预定义查询并在运行时按名称执行。

使用 @NamedQuery批注创建与@Entity@MappedSuperclass关联的预定义查询,这些查询:

使用 JPA 查询语言(请参阅JSR-000220 Enterprise JavaBeans v3.0规范,第 4 章)进行基于任何基础数据库的可移植执行

经常被使用

比较复杂并且难于创建

可以在不同实体之间共享

只返回实体(从不返回标量值),并只返回一个类型的实体

如果有多个要定义的 @NamedQuery,则必须使用@NamedQueries

Eg:

@NamedQueries(

{

@NamedQuery(name= “entity.name”, query = “select a from SsGoodsMskuEntity a  where a.msk = ? ”),

……………………………..

}

)

@NamedQuery 预定义的sql的使用;

AtomicReference<String>hql = new AtomicReference<String>(“实体名称.预定义query名称”);

List list =HibernateTemplate().findByNamedQuery(hql,namedQuery 的参数1,nameQuery 参数2,。。。。);

 
 
 
 
5.11 the JSP specification requires that an attribute name is preceded by whitespace
Jsp 页面两个属性间缺少空格;
 
5.11:<s:select> 的使用
<s:select list=”${list}” listKey=”id” listValue=”value” headerKey=”defaultKey” headerValue=”defaultValue”key=”xxx”value=”xxx”>
 
5:14 :hibernate 一对多的保存问题:
在一的一方上设置:设置级联
@OneToMany(cascade = CascadeType.ALL, mappedBy = "sku", fetch = FetchType.LAZY)

5:14 :oracle  字符串为空判断: 只能用 is not null ;不能用 <>  或者!=

5:15 : <s:iterator >

有三个属性:value:被迭代的集合 , status:迭代元素的索引 , id:迭代元素的别名;

<s: iterator value=’page.result’ var=”obj”>

<s:propertyvalue=”#obj.xxx”>

</s:iterator>

5:15: js  String.indexOf(str)

判断str在String中第一次出现的位置(从0);若结果为-1:则表示不在该String中;

因此可以用String.indexOf(str)==-1来判断String是否包含str这个字符串;

5:15:

com.opensymphony.xwork2.ActionSupport.getText(StringaTextName)
login.text = 登录//propertylogin.title = %{getText("login.text")}页面
getText(key);可以得到国际化的属性文件中对应key 的值

5:15:hibernate 对对象查询条件进行面向对象的封装

DetachedCriteria dc =DetachedCriteria.forClass(obj.class);

dc.add(Restrictions.like(“attribute”,”value”));//设置xx like xx

dc.add(Restirctions.isNotNull(“attribute”));//设置 xx is not null

dc.addOrder(Order.desc(“attribute”));//设置排序

dc.setProjection(Projections.projectionList()
        .add(Projections.rowCount().as("catCountByColor") )
        .add( Property.forName("weight").avg().as("avgWeight"))
        .add(Property.forName("weight").max().as("maxWeight") )
        .add(Property.forName("color").group().as("color" )
    )//设置查询的属性

dc.setResultTransformer(DetachedCriteria.DISTINCT_ROOT_ENTITY);//对结果集进行过滤

1.      dc.list();//获得结果集方法1

2.      getHibernateTemplate().findByCriteria(criteria,index, size);

index:取得结果集的起始位置

size:取得结果集的大小;

5:15: linux 下火狐安装flash 插件

1:下载flash_player;

2: 解压-:tar zxvfflash_player.gz

3:将解压后的 libflashplayer.so文件 放到 /usr/lib/mozilla/plugins/下

4:重启浏览器即可

5.16: html 调用 js 变量:

在html需要显示js变量的位置添加

<script>

Document.write(js变量);

</script>

5.16:Executors.newFixedThreadPool(int )的实现

1.public static ExecutorService newFixedThreadPool(int nThreads) {

2.        return new ThreadPoolExecutor(nThreads, nThreads,

3.                                      0L, TimeUnit.MILLISECONDS,

4.                                      new LinkedBlockingQueue<Runnable>());

5.    }

5.16:如何将每天的增量数据放到对应的挖掘数据库中:

每个表均设置一个时间字段:之后按时间取出增量信息

5:17: 消息队列本身是异步的,它允许接收者在消息发送很长时间后再取回消息,这和大多数通信协议是不同的。例如WWW中使用的HTTP协议是同步的,因为客户端在发出请求后必须等待服务器响应。然而,很多情况下我们需要异步的通信协议。比如,一个进程通知另一个进程发生了一个事件,但不需要等待响应。但消息队列的异步特点,也造成了一个缺点,就是接收者必须轮询消息队列,才能收到最近的消息。

5:17:Queue接口:

实现类:LinkList

方法1:移除返回:remove()à队头为空的时候抛出异常;poll()à队头为空的时候放回null

2:插入一个元素:offer();

3:获取但不移除:element();peek();

5:17:StringBuffer 底层实现:是根据char[]

5.17:根据excel 模版生成excel 文件(JXLS使用

newXLSTransformer().transformWorkbook(workbook1, map);

<jx:forEachitems="${detaillist}" var="detail" varStatus="status">

${status.index+1}//序号

</jx>

Eg: Resource resource = new ClassPathResource(getText("export.xls.porder"));

HSSFWorkbook workbook1 = new HSSFWorkbook(resource.getInputStream());

int count = workbook1.getNumberOfSheets();

for (int i = count - 1; i >= 0; i--) {

String sheetName =workbook1.getSheetName(i);

if (!sheetName.equals(sheet)) {

workbook1.removeSheetAt(i);

}

}

new XLSTransformer().transformWorkbook(workbook1,map);

setFileName(URLEncoder.encode(sheet,"UTF-8") + ".xls");

ByteArrayOutputStream baos = new ByteArrayOutputStream();

workbook1.write(baos);

baos.flush();

byte[] aa = baos.toByteArray();

setExcelStream(new ByteArrayInputStream(aa, 0, aa.length));

baos.close();

5:struts2 向浏览器发送inputStream

<action name="exportPorder"class="porderAction" method="exportPorder">

<result name="success" type="stream">

<param name="contentType">application/vnd.ms-excel</param>

<param name="inputName">excelStream</param>

<param name="contentDisposition">attachment;filename="${fileName}"</param>

<param name="bufferSize">1024</param>

</result>

</action>

5.18: struts 实现ajax

Action 返回值 null

Jsp:

$.ajax({

url:””,

data:””,

cache:,

type:””,

sync:false/ture,//默认是true

success:function

});

5.18 java 批量提交

1:预处理

conn = DBToolkit.getConnection();

  String sql ="insert into testdb.book (kind, name) values (?,?)";

  PreparedStatement pstmt= conn.prepareStatement(sql);

  pstmt.setString(1,"java");

  pstmt.setString(2,"jjjj");

  pstmt.addBatch();                    //添加一次预定义参数

  pstmt.setString(1,"ccc");

  pstmt.setString(2,"dddd");

  pstmt.addBatch();                    //再添加一次预定义参数

  //批量执行预定义SQL

pstmt.executeBatch();

2:执行静态的sql

Statement stmt = conn.createStatement();

  //连续添加多条静态SQL

  stmt.addBatch("insertinto testdb.book (kind, name) values ('java', 'java in aciton')");

  stmt.addBatch("insertinto testdb.book (kind, name) values ('c', 'c in aciton')");

  stmt.addBatch("deletefrom testdb.book where kind ='C#'");

  stmt.addBatch("updatetestdb.book set kind = 'JAVA' where kind='java'");

  //注意批量执行不支持Select语句

  //执行批量执行

  stmt.executeBatch();

5:18

prePareStatement和 statement 的区别

1:prePareStatement: 只用许绑定一条sql; 执行的时候:prePareStatement.execute();

2:statement:允许执行多条sql;执行的时候:statement.execute(sql);

3:对于执行同构的sql(只有值不同,其他结构都相同),用pstm的执行效率比较的高,对于异构的SQL语句,Statement的执行效率要高。 
4:当需要外部变量的时候,pstm的执行效率更高.

5:18

$.ajax({

type:"get",

url:"xxx/xx.action",

data:"id="+id,

cache:false,//false将不会从浏览器中加载缓存的信息

success:xxfunction

});

5:21

checkBox 后台action的取值问题;

在action 中获得的值为string[]

eg: String[] values = request.getParameterValues(“name”);

5.21

Struts action配置中

Action 没有class 则默认为:actionSupport

Action 没有method 则默认为:execute();

5.22

Eclipse 中web app libraries 中没有jar 包;

解决:

到工程目录下.settings 下的 org.eclipse.wst.common.component

配置对wb-resource:对应到相应的lib所在的顶级目录

Eg:

<?xml version="1.0"encoding="UTF-8"?>

<project-modulesid="moduleCoreId" project-version="1.5.0">

<wb-module deploy-name="tt.cn">

<wb-resource deploy-path="/" source-path="/WebRoot"/>

<wb-resource deploy-path="/WEB-INF/classes"source-path="/src"/>

<property name="context-root" value="tt.cn"/>

<property name="java-output-path" value="/tt.cn/build/classes"/>

</wb-module>

</project-modules>

5:22  在java 中获得月份的天数

//获得每个月的实际天数

public int getNum4Month(Stringdate){

Calendarcal = new GregorianCalendar();

SimpleDateFormatsimDate = new SimpleDateFormat("",Locale.ENGLISH);

simDate.applyLocalizedPattern("yyyyMM");

try{

cal.setTime(simDate.parse(date));

}catch(Exception e){

e.printStackTrace();

}

int num = cal.getActualMaximum(Calendar.DAY_OF_MONTH);

return num;

}

5:24 后台线程:

后台线程不属于程序中不可或缺的部分;故当所有非后台线程都结束时候后台线程也将被销毁;

后台线程的定义:

Thread th  = new Thread(newRunndable);

th.setDaemon(true);

th.start();

5:24 写一个继承于ThreadFactory

作用:可以指定Executors.newCacheThreadPool 的实现方式;

Eg:

Public class DaemonFactory implement ThreadFactory{

PublicThread newThread(Runnable r){

Threadt = new Thread(r);

t.setDaemon(true);

return t;

}

}

Class   xxx{

Publicvoid xxx(){

ExecutorServiceex = Executors.newCacheThreadPool(new DaemonFactory());

Ex.executor(newxxxxrunnable());

}

}

5:24 js获得页面高度

<script>function getInfo()
{
var s = "";
s += " 网页可见区域宽:"+document.body.clientWidth;s += " 网页可见区域高:"+document.body.clientHeight;s += " 网页可见区域宽:"+document.body.offsetWidth + " (包括边线和滚动条的宽)";s += " 网页可见区域高:"+document.body.offsetHeight + " (包括边线的宽)";s += " 网页正文全文宽:"+document.body.scrollWidth;s += " 网页正文全文高:"+document.body.scrollHeight;s += " 网页被卷去的高(ff)"+document.body.scrollTop;s += " 网页被卷去的高(ie)"+document.documentElement.scrollTop;s += " 网页被卷去的左:"+ document.body.scrollLeft;s += " 网页正文部分上:"+ window.screenTop;s += " 网页正文部分左:"+ window.screenLeft;s += " 屏幕分辨率的高:"+ window.screen.height;s += " 屏幕分辨率的宽:"+ window.screen.width;s += " 屏幕可用工作区高度:"+window.screen.availHeight;s += " 屏幕可用工作区宽度:"+window.screen.availWidth;s += " 你的屏幕设置是 "+window.screen.colorDepth +" 位彩色";s += " 你的屏幕设置 "+window.screen.deviceXDPI +" 像素/英寸";//alert (s);
}

524 判断是否ie浏览器

<script>
if(!+[1,])alert("这是ie浏览器");
else alert("这不是ie浏览器");
</script>

5:28 eclipse 项目无法转化为web 2.5

解决:打开.setting

修改:org.eclipse.wst.common.project.facet.core.xml

<installed facet="jst.web"version="2.5"/>

5:28: 在eclipse 中项目需要具有的libraries

1:Web App Libraries

2:JRE System Library

3:Apache Tomcat v6.0

5:29  mybatis 如何实现多参数查询;

在xxMapper.java 中的的方法:

Public T getAccount(@Param(“name”)Stringname,@Param(“pwd”)String pwd);

在xxx-mapper.xml中

<select id=”xxx”>

Select* from account where username=${name} and password=${pwd}

</select>

5 月份实习遇到的一些问题相关推荐

  1. 我从实习到现在的经历,幸运女神总会来到!

    我从实习到现在的经历,幸运女神总会来到! 2018年10月份实习时间到了,和大部分大学生一样,开始找工作,我是在山东日照上的大学,于是自己穿着正装坐火车去了荣成,面试一家规模比较大的公司,当然&quo ...

  2. 计算机专业学生寻找实习的经历和思考

    金三银四找实习  首先,把我的情况和找实习的结果总结一下. 情况:  计算机科学与技术专业大三,在大二的时候我已经决定要找工作,并且出去做开发,这个思考有一个比较长期的过程,大一萌芽,大二思考,大三确 ...

  3. 秋招上岸!双非本科,从外包实习到秋招收获阿里、美团、B站意向书!

    大家好,我是路飞,今天这篇文章是来还愿的!秋招顺利结束,感谢大家一直以来的支持和陪伴! 1.秋招果实 秋招正式批第一个意向书,阿里巴巴--Java研发岗: 9月初,终于收到了自己梦寐以求的公司发来的录 ...

  4. 在阿里实习后,他的感悟

    你好,我是TianTian. 在阿里实习三个月后,学弟经历了啥,又有哪些思考呢,以下是正文. 背景: 2021年春招期间拿到了阿里的实习offer,于2021年7月入职阿里巴巴本地生活,是前端开发实习 ...

  5. [综合面试] 跨专业大牛的IT求职面试经验分享以及学习知识路线图梳理

    百度三面,跪了,最中意的一家公司的最后一面,结束了我的校招应聘.总结经验和教训,希望能帮助一些人. 个人背景: 本科:大连理工信管专业,本科毕业代码量<500行.中科大读研,专业是管科,学的全是 ...

  6. 简谈“开放平台”设计中的一些感悟

    从2012年11月份实习开始,到现在2013年9月已经算是工作将近一年时间了,个人是从工作中学到了不少东西的.刚进公司的时候主要是负责平台服务器开发,后来由于我对前端的一些偏向,所有年后不久就转到公司 ...

  7. 我的Java自学之路,java高级面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

  8. 我的Java自学之路

    其实在转正之后我就想抽个时间好好的梳理一下我的 Java 上车之路 ,但是一直拖到现在 ,因为有学弟问到 ,所以也就给了我动力 .毕竟答应了人家的事要做到 . 首先要有相应的背景介绍 ,不然说个毛线啊 ...

  9. 软件质量之道:PCLint之中的一个

    故天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍性,增益其所不能. 孟子 1 引子 今天听老韩一席话,当真是感慨万千啊.心怀斗志昂扬.奋斗十年,到头来.却看到 ...

最新文章

  1. 探索客户端JavaScript
  2. SSH实现分页查询(转)
  3. 百度富文本编辑器UEditor安装配置全过程
  4. ocr python opencv_如何使用(opencv/python)来实现OCR处
  5. SpringCloud SpringBoot 推荐
  6. 汽车电子专业知识篇(六十三)-继电器的结构、工作原理、检测方法
  7. 阅读react-redux源码 - 一
  8. php swoole udp,基于Swoole如何搭建UDP服务?
  9. 随想录(程序调试与dll注入)
  10. 图解法求最优解的例题_初一上学期,方程的解互为相反数,两种方法求解参数的值...
  11. 预定义类型未定义或导入_LimeSurvey基础教程(二)——问题类型
  12. [USACO13JAN]Painting the Fence【扫描线】
  13. fill()和fill()_n函数还有memset()函数的比较
  14. Cadence画PCB的傻瓜式教程
  15. 2 Python数据分析 Tushare双均线与金叉死叉日期 Pandas数据清洗 级联操作 合并操作
  16. 推荐10篇2021年服装设计相关毕业论文文献
  17. 球坐标系下的两点距离公式
  18. [Vue warn]: Unknown custom element did you register the component correctly? vue.js:597
  19. 5g网络优化先培训是真的吗?
  20. python签到教程_Python实现自动签到脚本功能

热门文章

  1. 开源多云技术平台——Choerodon猪齿鱼发布0.16版本
  2. LiveNVR中使用Onvif协议控制预置位
  3. 《文明之光》读书笔记
  4. pytorch pt转onnx 以及 simpler—onnx方法(包含tensorrt文件转换)
  5. 获奖之后,感慨万分……
  6. Jsoup抓取到页面A标签中的href路径
  7. 微信公众号简单开发(2)验证服务器地址
  8. 大数据学出来做什么工作,就业方向有哪些?
  9. 根据RGB值,JSP页面显示相应颜色色块
  10. 电信运营商需要鲲鹏生产力