首页 文章 新番
动漫 学习 生活 日记 书籍 服务器 Bing
  • Spring MVC感受

    最近用了一下SpringMVC,相比Struts2给我最大的感觉就是SpringMVC的URL太漂亮了,这种风格好像叫RESTFul吧,参数也可以放到URL的路径里面太棒了。不过Struts2也可以使用插件来支持这种URL。当然这也可以看出来Struts2和SpringMVC的区别了,Struts2针对的是action,而SpringMVC针对的是方法。前者通过filter实现,后者通过servlet实现。

    2014年07月28日 Spring Spring MVC Struts
  • Hibernate多个字段映射一个属性

    最近工作丢了,面试了两家公司也没过,在思考人生。诶,扯远了。其实我确实没事,于是看了一下我的网站代码,看到用户设计那里,我把用户和用户其他信息分成两个表的,其他信息里面包含用户的自我介绍,签名档一些信息。但是用户的个人中心那里每次都会查询出来用户的自我介绍,签名档这些信息,这样每次都有一个关联查询。所以有没有办法可以把用户其他信息放到用户表,但是映射到用户的其他信息这个属性类里面呢?![powerdesign](http://static.acgist.com/resources/images/article/201501/14048794138841001.jpg)其实我对Hibernate也不是很熟悉,也就是会用罢了,于是我就百度了,但是关键词也不对,找了一下也没找到。好吧,我就把Hibernate映射xml里面的所有关键字一个一个的百度,终于是找到了:`component`,就是这个了。配置文件:```xml```当然如果你不是每次都要查询出来的信息,可以分开一个表,例如我的联系方式我是根据用户是否显示来判断是否查询的,所以可以分开一张表,当然用`component`也可以,因为这个也支持延迟加载。参考...

    2014年07月09日 Hibernate component
  • Java使用WebSocket和WebRTC视频通话

    **新版的Chrome浏览器,加强了安全性,所以要使用`https`,同时也有很多修改,这个例子已经过时,不能使用。**可以参考新的文章:[WebRTC续集](https://www.acgist.com/article/628.html)这两天终于是抽了时间把WebRTC搞定了,去年就想弄的,但是确实没时间,而且那时候JavaEE的WebSocket还没有规范,网上也都是用的Tomcat自己的WebSocket实现的,或者还使用了一些ajax辅助,JavaEE7中有了WebSocket的规范,Tomcat也支持,所以最近也是写了出来。首先WebRTC,这个可以百度一下,大概就是一个音频和视频通讯技术,可以跨平台,只要能用浏览器的基本都可以使用,当然要你的浏览器支持。但是这东西好像是有规范,但是各个浏览器实现方式有些不一样,我这里主要使用的是Chrome做的例子。DEMO地址在:[http://www.acgist.com/demo/video](http://www.acgist.com/demo/video)>如果很长时间没有加载出来,对不起,很可能是你上不了Google。使用到的javascrip...

    2014年05月28日 WebSocket WebRTC 视频通话 Java
  • Arrays.asList注意

    今天遇到了一个错误:```javajava.lang.UnsupportedOperationExceptionatjava.util.AbstractList.remove(AbstractList.java:161)```后来Google了一下,原来使用`Arrays.asList`生成出来的这个集合对象是不能进行修改的。如果我们需要修改怎么办呢?我们可以重新`new`一个集合就可以了,如下:```javaListlist=newArrayList(Arrays.asList("a","b"));```

    2014年05月16日 Arrays.asList Java
  • Java空指针异常

    相信大家多觉得Java的空指针非常简单,很容易排查,但是却又是非常容易忽略的一个错误。今天就遇到了一个比较麻烦的情况,因为使用的是别人打好的Jar,也没有什么语法错误,但就是运行的时候出错:```javajava.lang.NullPointerException```但是一般空指针异常也不应该出现在传递参数的方法这里啊,最后认真看了一下参数才发现,原来接收参数是`int`类型,但是我传入`Integer`类型参数为`null`时,自动拆箱时就会抛出空指针异常。例如:```javapublicstaticvoidtest(intnum){System.out.println("============>"+num);}publicstaticvoidmain(String[]args){Integernum=null;test(num);}```

    2014年05月13日 Java 空指针 NullPointerException
  • Hibernate的配置文件打包找不到实体类

    公司最近要求把写好的代码打成Jar包,弄好后今天试了一下,居然报错:```javaorg.hibernate.MappingException:Unknownentity:xx.xx.xx.Useratorg.hibernate.internal.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:1092)atorg.hibernate.internal.SessionImpl.locateEntityPersister(SessionImpl.java:2436)atorg.hibernate.internal.SessionImpl.access$2100(SessionImpl.java:172)atorg.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.(SessionImpl.java:2378)atorg.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.(SessionImpl.java:2369)...

    2014年05月09日 Hibernate Maven
  • CentOS设置默认语言

    今天安装了CentOS研究一下Linux,但是使用VM虚拟机太智能了,丫的我就输入了一下账号和密码,居然把语言,账号,分区等等全部配置好了。本来想学习一下安装的,不过这没什么,但是坑爹的是进去居然是英文,当年我英语150考试作弊也才60分,这不是要我的命。本来我是想找一下system下面有没有setting的,好吧没找到,于是乎网上我找了一下,基本上修改`/etc/sysconfig/i18n`那个文件。还有一个办法就是输入以下命令:```bashyuminstallsystem-config-languagesystem-config-language```修改后重启`reboot`,注销然后登陆好像不行,试了几次,所以我才找到后面那个方法的。参考文章:[https://www.centos.org/forums/viewtopic.php?t=2037](https://www.centos.org/forums/viewtopic.php?t=2037)

    2014年05月06日 CentOS Linux
  • PostgreSQL数据库错误

    ```sqlinsertintotb_b(select*fromtb_awherecln=20);ERROR:column"xxxx"isoftypebigintbutexpressionisoftypecharactervaryingLINE1:insertintotb_b(select*fromtb_awherecln...```遇到了这个问题,以前一直这么写插入的都没问题,怎么回事呢?提示类型不对?纳闷了很久。后来对比两张表发现,原来是修改表的时候字段的顺序不对应了,所以把语句修改为:```sqlinsertintotb_b(clna,clnb,clnc,cln)(selectclna,clnb,clnc,clnfromtb_awherecln=20);```这样就可以了,现在发现SQL当年学的相当马虎啊。需要恶补一下,顺便推荐一个书不错:《SQL必知必会》

    2014年04月10日 PostgreSQL
  • Maven编译Struts2源码

    前几天修改了Struts2的默认action和通配符的冲突,现在我们就是用Maven编译和打包struts的源代码。首先我们先安装Maven,搭配环境,这个自行Google就可以了。然后解压struts的`xwork-core`,进入到该目录我们修改代码后就可以使用命令编译打包:```bashmvnpackage-Dmaven.test.skip=true```>注意:`-Dmaven.test.skip=true`设置跳过测试,因为里面测试的一些环境不对,编译会失败。修改代码的时候,添加了其他包的类,所有要修改pom添加依赖,否者会提示错误:程序包`org.apache.struts2.dispatcher`不存在,添加以下信息到pom.xml:```xmlorg.apache.strutsstruts2-coreversioncode```>上面的versioncode是你的struts版本,如果还需要其他依赖包可以在[http://mvnrepository.com/](http://mvnrepository.com/)这个网站搜索。在运行上面的命令就ok了。![Maven编译Struts...

    2014年04月07日 Maven Struts2
  • Struts2通配符和默认action冲突

    Struts2找不到action的时候就会抛出一下错误:```javaUnabletoinstantiateAction,xxxxAction,definedfor'xxxx/xxxx'innamespace'/'xxxxActionatcom.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:316)atcom.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:397)atcom.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:194)atorg.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63)atorg.apache.struts2.impl.StrutsActionProxyFactory.c...

    2014年04月04日 Struts2 通配符 default-action-ref
  • Python编码问题

    今天Python一个编码问题,我的文件都是UTF-8的,我直接把那段字符串复制也没问题,就是从文件读出来有问题,错误信息:```pythonUnicodeDecodeError:'gbk'codeccan'tdecodebytesinposition221-222:illegalmultibytesequence```诶,想不通?为什么会报这个错误,当然解决办法是用`str()`函数处理一下。有时间在考虑这个问题了,没时间看动画片了。

    2014年03月29日 Python 编码
  • Python腾讯微博上传图片

    好吧下午弄完腾讯微博登录模拟,发送文章信息,我实在是等不及实现发送图片了,于是我挤了点时间,动画片都没看来把下面的写完。首先我们看一下图片上传时的信息:![腾讯微博浏览器上传信息](https://static.acgist.com/resources/images/article/201501/13960973728971055.png)OK,我们假设已经处于登录状态了,发送图片微博和文字微博差不多,只不过上传图片和添加一下图片信息就可以了。在文字微博的参数加入图片信息如下:```jsonformdata={"content":msg,"pic":"",#上传图片获得的链接"countType":"","pgv_ref":"web.base.master.talkBox.btnApolloMyHome","apiType":"14",};```好了,最重要的就是上次图片操作,代码如下:```pythondefgetPicUrl(imgmsg):#读取图片连接ifimgmsg==None:returnNone;returnimgmsg.split(",")[1].split("{")[1].split("\"...

    2014年03月29日 Python 模拟浏览器 文件上传 腾讯微博上传图片
  • Python模拟登录腾讯微博发送微博

    前不久用Java模拟登录微信,今天我有心血来潮想刷一下图片微博,于是我就用Python写了一个登录腾讯微博刷微博的。本来可以用Java写的,但是几天没看Python差不多又忘了,于是还是用Python来写,主要是练练手。这里不得不说Python的`urllib`和`urllib2`这两个包实在是太强大了。首先我们要实现这个功能我们需要几步:1.登录微博;2.记住登录状态,也就是`cookie`的保存;3.发送微博;我们先来写第一个登录微博:先我们用浏览器可以很清楚的看到登录地址:```bashhttps://ssl.ptlogin2.qq.com/login?u=%s&verifycode=%s&p=%s&pt_rsa=0&ptredirect=1&u1=http%%3A%%2F%%2Ft.qq.com&h=1&t=1&g=1&from_ui=1&ptlang=2052&action=9-101-1396061515832&js_ver=10073&js_type=1&login_sig=N7rJv...

    2014年03月29日 Python 模拟浏览器登录 模拟登录腾讯微博 模拟发送腾讯微博
  • Google浏览器的正确使用方法

    其实做网站这些事情,浏览器在我们的手中觉得不仅仅是展现网页那么简单。浏览器在我们手中那就是一个瑞士军刀,功能太多。现在我就介绍一些Google浏览器审查元素的强大用法,我只讲解一下一些简单的功能,更多强大功能,请参考后面的文章。其实火狐的审查元素也是很厉害,但是我很少用我就不描述了,基本一样。首先在网页右键我们可以看到审查元素,或者使用快捷键`Alt+Ctrl+J`或者`F12`打开控制台。![Google浏览器控制台](https://static.acgist.com/resources/images/article/201501/13959039568511006.png)这里是控制台,我主要描述`elements`和`network`的用法。`elements`就是浏览器的元素,找到元素后我们可以随意修改。![Google浏览器元素](https://static.acgist.com/resources/images/article/201501/13959041364001013.png)在右侧有选定元素的CSS,我们把颜色修改为蓝色:![Google浏览器修改元素CSS](https://sta...

    2014年03月27日 Chrome Google浏览器 浏览器其他用法
  • 微信公众平台开发中的小问题

    最近搞了一下微信的接口,遇到了一些问题,这里总结一下:1.发送被动响应的消息时,`ToUserName`和`FromUserName`需要调换位置。2.网页授权的时候如果在电脑端测试会提示“该链接无法访问,请稍后再试”,这个只能在手机版微信上面测试,因为要获取登录用户的`openid`。

    2014年03月26日 微信公众平台开发 微信网页授权
  • MongoDB修改

    最近研究了一下MongoDB,感觉修改的有点点麻烦,我这里总结一下。```sqlupdate(q,o,upsert,multi);```>第一个是条件;>第二个参数是修改的内容;>第三个没有找到条件的项是否添加,默认false;>第四个参数是是否多个结果修改,默认false。如果没有使用参数的状况下,默认修改第一条。如果没有使用`$set`,那么将会替换里面所有的属性:![MongoDB查询结果](https://static.acgist.com/resources/images/article/201501/13950459657171006.png)使用了修改器,就会追加到最后:![MongoDB查询结果](https://static.acgist.com/resources/images/article/201501/13950460138311013.png)然后麻烦一点就是批量修改:如果是多个修改的时候我们需要设置修改器,否者会出错:```sqlmultiupdateonlyworkswith$operators```我们需要这么写:![MongoDB查询结果](http...

    2014年03月17日 MongoDB
  • build.prop修复

    昨天心血来潮刷了系统,然后软件,`root`都弄好了,然后改了一下`build.prop`居然进入不了系统,最后百度了一下原来是没有修改权限。于是我就刷了`twrp`(也有其他第三方`recovery`应该也可以的),然后进去修改权限,但是怎么也看不到`system`里面的`build.prop`文件。我着急啊,最后发现原来要在`mount`里面挂载你的`system`就可以了。大概流程我记录一下:*下载`adb`和`fastboot`等工具,自行Google。*下载对应版本的`twrprecovery`的`img`文件。*启动到`bootloader`(开机按住音量下键)*然后`fastbootflashrecovery`你的`twrp.img`。*最后重启手机到recovery模式。```bashfastbootflashrecoveryTWRP_U9508_v3.imgfastbootreboot#重启注意启动时按住音量上键进入recovery模式```*进入`twrp`后,挂载`system`,在`mount`里面勾选上`system`就可以了。*启动`cmd`,进入你的`adb`工具文件夹,执行以下...

    2014年03月16日 build.prop
  • MyEclipse字体优化

    MyEclipse的字体其实很好看的,但是我们写到中文的时候就非常尴尬,字体很小看不清楚,但是字体调大后看起来有很别扭。这时候我们可以设置框里面的脚本选取中欧字符,这样中文就很好看了。![MyEclipse字体优化](https://static.acgist.com/resources/images/article/201501/13945012605391006.png)Eclipse同样适用。**注:如果不知道字体在那里设置或者其他配置选项的,可以直接在上方的搜索框搜索“font”或者相应关键字。**

    2014年03月11日 MyEclipse 字体优化 Eclipse
  • 监听器粗心小错误

    本来我就是个粗心的人,丫的今天又上一当,自己配置了一个监听器用来启动时初始化一些数据和停服务器的时候用来统计数据的,结果死活启动时没有初始化。对比我以前的项目代码我都一样的,为什么?为什么?到底是为什么?结果让我吐血啊,原来我的代码是这样:```javapublicvoidcontextInitialized(ServletContextEventevent){Logger.writeInfo(this.getClass(),"系统启动。。。");Initializer.init();//开始初始化}publicvoidcontextDestroyed(ServletContextEventevent){Destroyer.destory();Logger.writeInfo(this.getClass(),"系统关闭。。。");}```注意上面代码的方法顺序,最新的那个我是用`Ctrl+1`生成的方法,然后悲剧的事情发生了。**自动生成的方法是按照方法名来排序的,也就是`destroy`方法在前面,我没看就直接理解为先是初始化方法再是销毁的方法了**,所以我把初始化代码写在销毁的方法里面肯定出是不行的了😂...

    2014年03月05日 ServletContextListener 监听器
  • Python导入模块

    学了几天Python了,用PyDev导入模块时总是出问题,搞定了,这里记录一下。导入代码如下:```pythonfromcc.first.firstimportman```我都是用工具自动提示的,Alt+/,我想导入没问题的,编辑器也没报错,当然我确实看不出哪里有问题。可是每次运行就报错:```pythonTraceback(mostrecentcalllast):File"E:\eclipse\helloworld\cc\first\skd.py",line12,infromcc.first.firstimportmanImportError:Nomodulenamedcc.first.first```**这里提示找不到`cc.first.first`,原来这里不要加上路径名字,直接`fromfirstimportman`就可以了**。当然这里我也有错误的地方,因为我这里的`cc.first`不是包,而是文件夹,所以会出错误。如果你要改成包,你要添加`__init__.py`到文件夹里面(每个文件夹里面都要有这个文件),改成包前面的就没有问题了。

    2014年03月03日 Python 模块 PyDev
1...262728293031

关于 ACGIST

Copyright © 2013-2025 ACGIST.COM. All Rights Reserved.