- 浏览: 430173 次
- 性别:
- 来自: 杭州
最新评论
-
lizhenlzlz:
对我有用,评论也有用
XStream快速起步 简单方便实现序列化(XML和JSON) -
DREAMS_ZDX:
多谢 解决了困扰我的问题
Process输入流输出流的正确使用 -
Ryan1Zheng:
tess3Wrapper
java下OCR的实现[j4l简单使用] -
zhangxiao_:
因为onDestroy() 在Fragment 不会执行!也 ...
设置高德地图在Fragment中显示 -
验孕侠:
新人,希望大神们能多分享职场的一些东西
工作感悟
文章列表
90行代码爬取我的微博
- 博客分类:
- FShap
本文来自 fairjm@iteye 转截请注明出处
这90行代码写了大半年,本来年初就能写好的,结果懒癌发作一病不起,昨天突然惊醒,已经过了半年了,这半年来也没业余好好写代码,发的文章也是划水性质,不能再这么下去了.
初衷其实挺简单的,看自己发了1w+的微博,想着哪天不见了青春的记忆就荡然无存,实在太可惜了,保存到本地方便追溯.
目标是 http://weibo.com/xxxx/profile所有页码的内容.
吃点糖不好嘛 甜甜的Lombok
- 博客分类:
- java菜鸟笔记
本文来自 fairjm@iteye 转截请注明出处
语法糖虽然没有为语言带来翻天覆地的变化,但是也减少了开发者的痛苦感.对于java这种更新进度缓慢,语法比较啰嗦的语言,多一点语法糖就可以减少大量的代码.lombok正是为此而生的项目.项目地址:https://projectlombok.org/
因为官方文档简单并且详细,可以自行参阅.这里就聊聊常用的一些.
冗长的类型声明
想想scala里的val var,类型声明可以根据赋值推导出来,然而在java里只能老老实实写.想一想代码里的 StringBuilder sb = new StringBuilder();
为什 ...
本文来自iteye @fairjm 转截请注明出处
---
偶尔会有一些业务需求是可以在线上代码运行的时候动态改变一些行为,一般的做法是使用个配置文件,存在数据库或者redis等存储中,程序动态获得之后解析根据配置进行相应的操作.在配置不复杂的情况下这样的做法能够满足需求.但如果配置很复杂,或者配置的规则很多,那么解析配置并运行就变成了一件很麻烦的事情.可能会引入一些解析器,或者`Criteria`这样的类.
如果这样,那是不是嵌入一段代码动态加载运行会不会简单点?
好在java本身就提供了这样的机制,也就是JSR-223
因为是开发使用的,所以 ...
F# 优雅使用Dapper进行数据库操作
- 博客分类:
- FShap
本文来自 iteye@fairjm 转截请注明出处
之前写过一篇用SQLProvider进行数据库连接的,但实际使用的时候发现兼容性不是很好,在用mysql的时候很多表都找不到,要反复rebuild.
直接使用ADO.NET的话就显得麻烦.来看一下ADO.NET一个查询到例子
let cStr =@"Server=地址;Port=端口;Database=数据库名称;Uid=用户名;Pwd=密码;"
use conn =newMySqlConnection
本文来自http://fair-jm.iteye.com/ 转截请注明出处
时间一不小心就过去那么久了,毕业后正式工作也一年多了,有些想法,有些感悟.
这一年来也没写过什么文章.一是接触的新东西少了,工作多是业务相关,没什么好写(之前写过一篇...). ...
本文来自http://fair-jm.iteye.com/ 转截请注明出处
前几天看spring实战(第四版)的spring-data-jpa部分 自己也动手实践了下 发现了一些问题
这边记录一下问题排除后的配置
首先是pom,这本书最不好的一点就是不告诉你要哪些依赖包。
我在动手实践的时候发现hibernate 5.2.1和spring4.2会出现flashMode方法找不到,查了下发现是hibernate在一个版本突然移除了这个方法,结果spring4.2以上跪了,我用的是spring4.3.2但是依赖的最新的spring-data-jpa依旧间接依赖4.2.6的spr ...
App后端服务器开发小结
- 博客分类:
- java菜鸟笔记
本文出自iteye http://fair-jm.iteye.com/ 转截请注明出处
app的API与网站使用的API较大的区别是其生命周期更长.API的修改需要做到向后兼容.
app的API设计要考虑到app的版本问题.API本身需要可以演化.
怎么拿到App的版本?
--
这不是一个技术问题而是一个设计问题,需要和app开发协商.
比如User-Agent字段,让app发送请求都带上一些标志.
后端建议做成一个工具类,可以从Request中抽取这些数据.
比如:
public AppInfo getAppIn ...
本文出自iteye http://fair-jm.iteye.com/ 转截请注明出处
需求比较特殊,需要将一个项目的ModelAndView的action全部转成API返回的形式,返回代表JSON的字符串.
如果手工去改,那工作量很大且非常无聊,最好的方式就是在切面进行操作.
最后考虑在Interceptor中实现,这个Interceptor放在第一个位置,preHandle默认返回true(不覆写),postHandle中能接触到ModelAndView以及Response就在这里操作,最后的代码如下:
public class ModelAndViewToRespo ...
本文来自 fair-jm.iteye.com 转截请注明出处
play的官方文档(for scala) 第二章的笔记 有兴趣的可以看下 有错误欢迎指出
Handling asynchronous results
Streaming HTTP responses
Comet sockets
WebSockets
1、Handling asynchronous results
来自 <https://www.playframework.com/documentation/2.3.x/ScalaAsync>
Play自下而上都是 ...
python(2.7)学习笔记
- 博客分类:
- 其他的
本文来自fair-jm.iteye.com 转截请注明出处在osforce上看的python课程 就记了下课程的笔记放在百度网盘上了 pan.baidu.com/s/1gd4DsJL密码:up6m
非常基础的笔记 有兴趣和需要的可以看看
本文来自: fair-jm.iteye.com 转截请注明出处
QRGen的使用详见:
http://www.importnew.com/15028.html
playframework的安装可以去play的官网:
https://playframework.com/
通过activator建立一个play项目
activator new qr_example
使用eclipse插件生成eclipse项目 并导入
在项目根目录下的build.sbt中增加依赖
"net.glxn.qrgen" % "javase&q ...
本文来自: http://fair-jm.iteye.com/ 转截请注明出处
又做了一些笔记 因为长时间没做play的应用现在都已经生疏了
play官网的doc非常详细是非常好的学习教程 我想有了这个其他书都是浮云了
这是最近看的时候摘录的一些内容 翻译了一下 如果错误麻烦指正
第一章的内容还差两节 等有空 翻译之后会放上来
1、HTTP编程(HTTP programming)
1.1 Actions, Controllers and Results
SimpleResult
def index =Action{ SimpleResult( ...
使用sbt创建play工程
- 博客分类:
- scala学习笔记
本文来自 http://fair-jm.iteye.com/ 转截请注明出处
因为新版的play要用activator 但使用activator比较蛋疼(国外的亚马逊s3在中国被ban 各种超时虐心)
不妨直接使用 sbt来生成
但lz建议先把activator的离线(300M那个下载下来) 然后放入对 ...
本文来自:fair-jm.iteye.com 转截请注明出处
看了些官网的文档 做点简单的总结
scala的类型系统比java要丰富点 但scala的运行时反射感觉比java的要难用
运行期反射的作用:
观察对象的类型 包括泛型
实例化一个对象
访问或者调用对象的成员
要使用运行期反射的相关工具的话 导入以下的包:
import scala.reflect.runtime.universe._
TypeTags:由编辑器生成
只能通过隐式参数或者上下文绑定获取
可以有两种方式获取:
scala> import scala.r ...
本文来自:fair-jm.iteye.com 转截请注明出处
defmodule Wordcount do
@moduledoc "simple wordcount program by fairjm"
@nodecount 3
def start(file) do
s = self
spawn(fn -> count(file,s) end)
end
defp count(file,caller) do
s = self
...