![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java-Web开发
文章平均质量分 69
小雷FansUnion
懂商业的技术合伙人。个人微信:FansUnion
微信订阅号:XiaoLeiFansUnion。
展开
-
Web开发的那点事--业务层常用功能
常见功能(以博客中的文章管理为示例) 1.增加 业务:写一篇文章 技术: 前端:一个页面或者对话框,等待用户输入,数据校验成功,提交代码 后端:存储到一个数据库表格中,有可能会存进多个表格。 常见问题:是否能重复增加 2.查看 业务:查看一篇文章 技术: 前端原创 2013-01-27 15:45:23 · 2535 阅读 · 0 评论 -
Web开发的那点事--好书推荐
声名远扬:代码大全,重构-改善既有代码的设计专家级:Struts2技术内幕,深入理解Java虚拟机:JVM高级特性与最佳实践,设计模式之禅夯实基础:改善Java程序的151个建议,深入理解Java7,大话设计模式,参考手册:JQuery权威指南,JavaScript权威指南,Hadoop权威指南,轻量级JavaEE企业应用实战管理有乾坤:IT项目管理那些事霸气外露:浪潮之巅,给原创 2013-03-09 08:24:54 · 2297 阅读 · 0 评论 -
Web开发的那点事--高效之道
CSDN博客不再经常更新,更多优质文章请来 粉丝联盟网 FansUnion.cn! (FansUnion)--------------------目标------------------核心目标:提高公司和个人开发效率,降低测试时间,减少Bug。--------------------指标----------------开发效率:提高开发效率20%以上。容易测试:根据源码容原创 2013-03-10 20:41:23 · 2013 阅读 · 3 评论 -
Web开发的那点事--数据持久层常用功能
CSDN博客不再经常更新,更多优质文章请来 粉丝联盟网 FansUnion.cn! (FansUnion)数据持久层--4类功能1.增加 增加一条记录-实体(有关联,没有关联) 2.修改 修改一个字段 修改多个字段 修改哪一列或哪些列:where一列多列 主键定位,多个列定位3.删除 物理删除:删除哪一列或哪些列 逻辑删除:本质是更原创 2013-01-27 18:09:36 · 2045 阅读 · 3 评论 -
Web开发的那点事--开发流程
CSDN博客不再经常更新,更多优质文章请来 粉丝联盟网 FansUnion.cn! (FansUnion)第0步:可行性分析 拿到项目,项目是否可行。 产品 技术可行性/法律/第1步:需求分析 收集和整理需求,知道项目要做什么。 可能的产物:需求分析文档、功能点文档、性能分析第2步:制作原型原创 2013-01-23 23:40:13 · 1882 阅读 · 0 评论 -
Web开发的那点事--软件复用
CSDN博客不再经常更新,更多优质文章请来 粉丝联盟网 FansUnion.cn! (FansUnion)复用的战场1.前台 CSS,JavaScript/jquery/AJAX HTML/JSP2.后台 增删改查 几乎一样。复用的级别 代码:一行代码或几行代码 函数:一个函数 类:工具类 组件:一个小的功能模块,比如操作日志管理、权限管理原创 2013-01-23 23:29:03 · 2010 阅读 · 0 评论 -
浅谈Web开发中的6种技术
CSDN博客不再经常更新,更多优质文章请来 粉丝联盟网 FansUnion.cn! (FansUnion)Web开发中的6种技术1.html超文本标记语言,即HTML(Hypertext Markup Language),是用于描述网页文档的一种标记语言。在web开发中,html主要用来构造网站的整体结构。2.css级联样式表(Cascading Style She原创 2013-01-23 00:43:43 · 1891 阅读 · 0 评论 -
JDBC访问数据库的基本程序
以下是jdbc访问数据库的基本程序,今后有时间再完善下。//属性配置文件db.propertiesdriver = com.mysql.jdbc.Driverurl = jdbc:mysql://localhost:3306/itoasvn?userUnicode=false&characterEncoding=GBKuser = rootpassword =198原创 2013-01-23 00:26:58 · 1630 阅读 · 1 评论 -
Java中发邮件的6种方法
Java中发邮件的6种方法。象发邮件这种功能,非常实用。使用别人的工具包可以大大提高自身的开发效率。 一般来说,发邮件不是一个项目或产品的核心业务。原创 2013-09-06 10:51:46 · 4563 阅读 · 3 评论 -
Web开发中8个基础&&常见功能
0.郑重声明:Fans同学写的技术文章,向来比较基础。仅供参考!对数据的操作1.表的结构create table Article(id int(10),title varchar(300),content text);2. 八种操作①增加insert into articlevalues(1,"Fans","I am fans.");原创 2012-12-08 17:28:05 · 2192 阅读 · 0 评论 -
提高生产力:Web开发基础平台WebCommon的设计和实现
Web开发中,存在着各种各样的重复性的工作。为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台。Web开发基础平台的目标和功能1.提供一套基础的开发环境,整合了常用的框架配置和库。新项目开发时,不用再重新搭建。2.提供一些基础的工具类库,比如文件操作、邮件发送、数据库CRUD操作、JSON转换。3.权限系统设计。4.异常处理和系统日志。5.前台界面展示。原创 2013-09-11 14:04:34 · 3290 阅读 · 0 评论 -
Web开发中,使用表格来展示每个角色对应的权限
通过表格这种方式,来展示角色和权限之间的关系,挺好的。还有很多场景,都可以用这种方式。角色权限表权限系统管理员文章管理员相册管理员留言管理员个人信息管理查看个人信息√√√√编辑个人信息√√√√编辑个人密码√√√√用户管理(用户信息包括基本属性和指定操作对象)查看用户信息√新建用户信息√编辑用户信息√删除用户信息√角色管理(角色信息包括基本属性和指定权限)查看角色信息√新建角色信息√编辑角色信息√删原创 2013-11-24 09:49:02 · 2173 阅读 · 0 评论 -
百度Echarts-免费的商业产品图表库
ECharts (Enterprise Charts 商业产品图表库)提供商业产品常用图表库,底层基于ZRender,创建了坐标系,图例,提示,工具箱等基础组件,并在此上构建出折线图(区域图)、柱状图(条状图)、散点图(气泡图)、K线图、饼图(环形图)、地图、力导向布局图,同时支持任意维度的堆积和多图表混合展现。原创 2013-11-29 14:08:17 · 6959 阅读 · 4 评论 -
SpringMVC框架中的异常解析器-ExceptionHandler和HandlerExceptionResolver
SpringMVC框架处理局部异常@ExceptionHandler和全局异常HandlerExceptionResolver。原创 2013-11-30 09:25:48 · 7262 阅读 · 0 评论 -
与公司2位经理的交流,Web开发知识库建设
1.代码库3种类型WebCommon:网站开发技术选型和最佳实践FansCommons :各种可以复用的代码CentronCore,CentronWeb3种类型:通用,web,环境(通用+Web)2.Web开发的那点事整理 最佳实践邀请工程师 每人写几篇??3.工作问题工作遇到的问题总结4.写博客-Wiki5.个人/企业知识体系的整理技术,管理,业务原创 2013-07-28 11:41:10 · 2475 阅读 · 0 评论 -
HibernateCRUD基础框架(2)-HQL语句构造器(HqlQueryBuilder,HqlUpdateBuilder)
HibernateCRUD基础框架包括3篇文章,主要讲述整个CRUD基础框架的思路。 第1篇:讲述最基本的实体类,这些实体类是对SQL语言中的一些概念的封装。 第2篇:在这些实体类的基础上,开发一个“HQL语句构造器-HqlQueryBuilder”。 第3篇:构建一套简单的和较为复杂的标准的CRUD API。原创 2013-12-30 18:17:02 · 3436 阅读 · 0 评论 -
提高生产力:发送邮件API和Web服务(包含源码)
在Web开发中,发邮件是一种常见的功能或任务。发送邮件的6种方式一文提到了6种方法,文章发表后,有网友指出了还有另外一种方法,Ant中也可以发送邮件。本文主要探讨发送邮件的标准API和Web服务。原创 2013-09-07 07:27:45 · 4337 阅读 · 0 评论 -
数据持久层(DAO)通用API的实现
在学习和工作的实践过程中,我发现很多功能是比较通用的,我们可以把他们抽象成API接口。 在Web开发中,一般都分3层。Controller/Action 控制层,Service/Business 服务层/业务逻辑层,Dao 数据访问层/数据持久层。原创 2013-08-14 22:19:15 · 3925 阅读 · 16 评论 -
JS实践与写博客-序
JS学习的一点体会。只学不用,永远不会。IT相关技术必须多实践才行!原创 2013-12-15 11:13:53 · 2357 阅读 · 6 评论 -
HibernateCRUD基础框架(3)-简单的和较为复杂的标准的CRUD API
优点:简单的和基础的CRUD功能可以很快实现,可以说是比较的“标准化”。维护起来也很容易。缺点:性能没有保障。不支持特别复杂的CRUD。可以适用的场景:小型Web项目。原创 2014-01-03 18:03:45 · 2735 阅读 · 9 评论 -
HibernateCRUD基础框架(1)-实体类
HibernateCRUD基础框架包括3篇文章,主要讲述整个CRUD基础框架的思路。第1篇:讲述最基本的实体类,这些实体类是对SQL语言中的一些概念的封装。第2篇:在这些实体类的基础上,开发一个“HQL语句构造器-HqlQueryBuilder”。第3篇:构建一套简单的和较为复杂的标准的CRUD API。原创 2013-12-30 17:40:03 · 2718 阅读 · 2 评论 -
提高生产力:Web前端验证的标准化
统一验证标准,减少重复劳动,提高生产力。 当公司内部有多个Web项目的时候,统一验证标准就很有必要了。统一不同项目的验证规则,比如 同为用户名 使用同一套标准,甚至用户名和机构名等也使用同一套标准。(明确定义非法字符的集合,比如@~.^) 除非客户有强烈的明确的要求,否则就按照公司的统一标准来做。原创 2013-08-19 12:59:46 · 2290 阅读 · 0 评论 -
提高生产力:SpringMVC中,使用扩展数据类型TypedMap接收Web请求参数
在Web项目中,如果前端MVC框架使用的是SpringMVC,可以使用Map接收前端请求参数,比bean要方便很多。 尤其是SpringMVC和Mybatis一起用的时候,用Map大大减少了需要的bean/vo/po之类的东东。 用Map也会遇到一个问题,就是类型转换的代码特别的多。因此,我想到了使用TypedMap来接收请求参数。原创 2013-08-20 21:46:01 · 2831 阅读 · 3 评论 -
提高生产力的2个方法:软件复用和知识库
说明:这是我的一个分享,本次分享中提到的问题,是一个巨大的命题,偶点到即止。一、背景与问题在了解了公司的一些项目(Access、Exchange、知客等),熟悉了公司项目部和测试部等部门的工作之后,结合自己工作和学习中的一些情况,意识到一个值得改进的问题。工作中的不少时间都是在处理重复性的工作,而这些工作其实可以避免或者大大减少。 比如 开发中的一些极其常见的技术或功能: a.原创 2013-06-22 16:03:44 · 2592 阅读 · 0 评论 -
提高生产力:文件和IO操作(ApacheCommonsIO-汉化分享)
复制、移动、删除、比较、监控、文件读写 等文件和IO操作是编程中比较常用的功能。幸运的是,Apache Commons IO等开源组件已经帮我们实现了。本文概要介绍了Apache Commons IO这个开源组件的整体功能。原创 2013-08-09 00:41:52 · 3713 阅读 · 3 评论 -
提高生产力:开源Java工具包Jodd(Java的”瑞士军刀”)
Jodd=tools + ioc + mvc + db + aop + tx + html < 1.3M Jodd是一个普通开源Java包。你可以把Jodd想象成Java的"瑞士军刀",不仅小,锋利而且包含许多便利的功能。原创 2013-08-13 21:58:50 · 3306 阅读 · 0 评论 -
获取Spring容器中Bean实例的工具类(Java泛型方法实现)
在使用Spring做IoC容器的时候,有的类不方便直接注入bean,需要手动获得一个类型的bean。因此,实现一个获得bean实例的工具类,就很有必要。以前,写了一个根据bean的名称和类型获取bean实例的2个工具方法,发现每次调用后,都需要强制转换成目标结果类型。这样很不方便,突然想到可以使用Java泛型方法,实现1个新的工具方法,避免了类型转换。原创 2013-11-27 16:48:55 · 9008 阅读 · 6 评论 -
FansMail:邮件发送标准API与技术实现(Java)
发送邮件,是Web系统等IT建设中最常见的一种功能。我对最常见的一种需求进行了抽象和封装,定义了一套标准的API,并且使用Java技术实现。项目信息项目名称:FansMail项目作者:LeiWen联系方式:LeiWen@FansUnion.cn当前版本:1.0.2日期:2013年12月12日邮件发送API/** * 发送邮件。 * * @param toList原创 2013-12-18 18:47:24 · 2637 阅读 · 0 评论 -
HTML中input标签maxlength属性的妙处
HTML中的maxlength属性,可以避免写JS脚本进行表单验证。原创 2013-12-18 21:42:38 · 2720 阅读 · 1 评论 -
Session or Cookie?是否需要用Tomcat等Web容器的Session
Cookie是HTTP协议标准下的存储用户信息的工具,浏览器把用户信息存放到本地的文本文件中。Session是基于Cookie实现的。2011年4月,武汉群硕面试的时候(实习生),面试官也问过这个问题。当时只知道Session是基于Cookie的,但是没有想到“不使用Tomcat等Web容器的Session,只使用Cookie也可以实现自己的Session,完成会话管理,而且据说性能更好。”以前的原创 2014-11-14 11:20:02 · 2421 阅读 · 0 评论 -
互联网分布式系统的一点思考
我自身没有独立自主开发和部署过 分布式系统,只有一点自己的理论上的经验。Boss之前在支付宝干活,最近发现项目中的一些疑惑时,向他请教,了解到了支付宝等互联网公司的一些情况,当然还有一些他自己的想法。 分布式系统的一点思考:多个项目,模块化,不同的模块使用不同的域名。图片和js、css存放在单独的域名。 有的模块服务化,处理 账务-用户等公共的操作,比如WebService实现。 有的原创 2014-11-14 13:33:23 · 2248 阅读 · 0 评论 -
博客搬家算法伪码
已有平台:CSDN博客、51CTO、博客园、WordPress不同平台的博客,数据解析方式不一样,数据抓取和存储都是类似的。1.确定博客首页地址 a.平台地址 比如,CSDN的博客地址是 http://blog.csdn.net/ b.账号 fansunion CSDN某个用户的地址是:http://blog.csdn.net/FansUnion2. 从首页获得关键信息 2.1原创 2014-11-14 17:12:23 · 1820 阅读 · 0 评论 -
SpringMVC,3种不同的URL路由配置方法(这根本不是一个小问题)
SpringMVC中配置URL拦截,非常简单。网上找个示例,就能通过。但是,在我做了好几个Web项目,又参与了别人主导的Web项目时,发现URL配置也非常有学问。1. 先说说一种比较常见的: theDispatcher org.springframework.web.servlet.DispatcherServlet contextConfigLocation原创 2014-11-15 20:06:58 · 8436 阅读 · 0 评论 -
后端管理系统有很大的相似性
Web后端管理系统整体上比较相似,做的多了,发现它们长得都很像。 根据我参与过和实现的后端管理系统,梳理下思路:1.登录 用户名和密码符合,通过登录。2.权限 根据用户或角色的权限,获取菜单,同时显示 操作按钮,比如“通过”、“拒绝”。3.查询功能 列表查询、详细页面 一般对查询的权限比较宽松,我所见过的权限设计,基本以菜单权限为主,或者 登录有读权限,写权限需要特别分配。4原创 2014-11-16 10:45:24 · 2600 阅读 · 1 评论 -
浏览器下载文件时一共发送2次请求,如何把“下载次数”只记录为1次?
每次下载download_count都直接+2了。如果服务器发生这种事,还有一定的可能,本地就我一个人下载,怎么可能下载2次。于是,打开了log4j的debug模式,果然执行了2次更新请求。原创 2014-11-19 23:39:50 · 6037 阅读 · 2 评论 -
Java-Maven项目引入UEditor图片上传组件jar包类库的5种方式
最近,硬是和百度的UEditor组件杠上了。自己的个人官网项目,很容易就搞定了,公司的项目,尼玛,各种问题。项目多了,环境复杂了,解决问题的方法也得不断调整。项目用Maven管理jar包,用到了UEditor的jar包。项目原来直接使用UEditor的源码,编译部署后,正常。后来用的是jar包,放到WEB-INF目录的lib包下,默认情况下,Maven不会把lib包加入到Classpath中,需要原创 2014-11-26 16:20:16 · 9633 阅读 · 0 评论 -
JUnit单元测试实践:测试工具类和方法(EmptyUtils)
以前的时候(读大学时),我认为写单元测试太费事了。 工作中,为了提高Web开发的质量和效率,近期又为了保证自己的工具类等一系列可复用组件的质量,我煞费苦心地开始认真学习和撰写单元测试用例。 我现在已经厌倦了Debug程序,更讨厌Debug Web程序,太浪费时间了。 最近,线上的一个BM项目,出了个bug。浮点数相减,没有判断null,搞的我加班到9:30。 苦逼的码农啊。原创 2013-08-17 11:06:41 · 4653 阅读 · 1 评论 -
数据库设计的共性
做了很多数据库表的设计,发现了一些共性。很多字段几乎必备的。对于实体来说,比如用户、角色、分组等,一般都有ID、Name、Description等。具体一点,常见的字段有以下几个:原创 2013-12-13 21:09:53 · 2891 阅读 · 0 评论 -
设计模式实战13--行为型--策略模式
策略模式(Strategy)定义:策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。 策略模式结构图: 策略模式解析: Context(应用场景): 1、需要使用ConcreteStrategy提供的算法。 2、 内部维护一个Strategy的原创 2012-09-23 08:22:53 · 1844 阅读 · 0 评论 -
Freemarker宏和函数的用法和区别
1.宏(macro)写法: 下一页 尾页 ${buildPageUrl(url2,page.pageNum+1,page)}">(注:这个地方可以直接调用宏所在的FTL中的函数)下一页 尾页 引入方式: 调用方式: 2.函数(function)写法: 引入方式:调用方式: ${buildPageU原创 2014-11-27 13:35:17 · 3868 阅读 · 1 评论