您好,欢迎光临 | 我的主页 | 个人资料 | 短消息 | 好友 | 书签 | 黑名单 |
http://www.javayou.com (添加到收藏夹,设为首页)
当你不能再拥有时,你唯一能做的,就是让自己不要忘记 (手机请访问 http://3g.dlog.cn/javayou)

DLOG4J 1.1 版发行说明

2004年10月6日(Wednesday) 10点47分 作者: 本站原创 天气: 心情: 一般

DLOG4J是一个遵循J2EE 1.3的规范,使用Java开发的网络个人信息平台。它具有以下特点:

1.     采用纯Java技术开发,符合J2EE 1.3规范。可在不同操作系统、数据库系统以及应用服务器系统间进行无缝移植;
2.     基于浏览求/服务器的瘦客户端方式;
3.     采用现今流行的符合MVC模式的Web应用开发框架—Struts;
4.     使用Hibernate进行数据持久性的处理;
5.     所见即所得的在线日记评论编辑器。  

DLOG4J 1.1 的新特性(与JDLOG 1.0比较):

(以下特性按完成的时间排序)

1.页面结构调整:使用静态HTML模板(WEB-INF\jsp\layout\layout.htm)来替换tiles布局框架;所有的JSP改在目录WEB-INF\jsp目录中;所有提交动作使用redirect进行重定向避免重复提交;解决了不同应用服务器的兼容性问题;
2.国际化:进行国际化框架的改造(目前只提供中文的资源文件);
3.同一DLOG的不同管理员拥有自己的日记草稿信息;
4.注册用户取回登录密码邮件;
5.使用Download4J对文件的下载进行集中管理;
6.解决了提交L记和评论失败(由于会话失效)后丢失的问题;
7.改进了网站的访问统计方式,同时增加了查看网站间链接明细;
8.细化权限模型:增加了密友的角色,可以给密友指定允许查看某个隐藏分类,同时好友只能在指定的公开分类中写日记;
9.Hibernate升级到2.1.6;
10.上传图形文件自动缩小尺寸;
11.增加搜索注册用户信息的功能;
12.日记标题允许使用HTML进行编写;
13.同一个用户查看多次日记只增加一次日记的查看数(同一个会话);
14.同一个用户六个小时内修改日记以及两个小时内修改评论不加修改戳;
15.自动初始化数据库的初始数据;
16.日记增加关键字字段,用于查看相关的日记列表;
17.搜索结果高亮显示;
18.支持TrackBack;
19.日记有回帖时自动邮件提醒;
20.网页标题反映当前操作内容。

准备工作:

1. 安装JDK1.4或者更高版本;您可以从http://java.sun.com上免费下载;

2. 安装JSP服务器。现在的JSP服务器有很多,请确认您的JSP服务器支持JSP1.2规范。对于普通用户,我们推荐使用TOMCAT 5.0.28,您可以从http://jakarta.apache.org/ 上免费下载。我们下面的例子也假设您使用的是TOMCAT 5.0.28。

3. 从我们的网站http://www.javayou.com上下载DLOG4J的发行包。

在Tomcat中部署JDLOG:

1. 将DLOG4J的发行包解压缩;

2. 用记事本打开TOMCAT的配置文件server.xml。它位于您安装的TOMCAT目录下的conf文件夹内;

3. 在server.xml的最后部分有一行</Host>。在它的上一行新增加下面的文字:

<Context path="/dlog" docBase="$JDLOG_HOME" debug="0" reloadable="true" crossContext="true"/>

其中$JDLOG_HOME请替换成您解压的JDLOG的实际目录。它看起来应该象D:/JDlog/dlog 。

配置数据库:

1. 我们的发行包中默认的数据库使用ACCESS。您不需要做任何改动就可以直接使用;

2. 如果您需要使用别的数据库,请根据自己的需要在DLOG4J的SQL文件夹下寻找合适的SQL建库文件,自行建立数据库;

3. 修改Struts的配置文件{webapp}/WEB-INF/struts-config.xml中的数据库连接池定义部分。您还需要将目标数据库的驱动包拷贝到{webapp}/WEB-INF/lib下。(详细的数据源配置请参照Struts的手册)

运行JDLOG:

1.   启动TOMCAT;
2.   在浏览器中输入http://127.0.0.1:8080/dlog
3.   使用用户名和口令都是admin登录后进行基本的设置。

经过测试的服务器(Windows平台):

1.Tomcat 5.0.28
2.Tomcat 5.5.2
3.Tomcat 4.1.30
4.Resin 2.1.14
5.Resin 3.0.8

关于Tomcat 4.1.30需要修改其系统配置web.xml {tomcat\conf\web.xml},需要给jsp处理小服务程序增加一个配置参数如下:

<init-param>
<param-name>javaEncoding</param-name>
<param-value>UTF8</param-value>
</init-param>

 

使用其他数据库:

创建数据库:使用PowerDesigner逻辑模型文件mydlog.cdm导出目标数据库的建库脚本,使用这个脚本来创建mydlog数据库;

邮件提醒的配置:

      DLOG4J提供的密码提醒以及日记回帖自动邮件提醒功能必须使用一个合法的邮件帐号才能发送邮件。这个合法的邮件帐号信息可以在struts-config.xml 中配置,如下所示:

    <!-- 邮件发送引擎 --> 
    <plug-in className="dlog4j.util.mail.MailSenderPlugin"> 
          <set-property property="mail" value="发件人邮件地址"/> 
          <set-property property="host" value=" SMTP服务器地址"/> 
          <set-property property="port" value="25"/> 
          <set-property property="username" value="邮件帐号"/> 
          <set-property property="password" value="邮件密码"/> 
    </plug-in> 

下载地址:http://www.javayou.com/download/dlog4j.war?id=uniqueid (不包括class的源码,源码会在随后发布)

欢迎大家下载测试,目前还没有提供数据升级的工具,不过数据库变动不是很大,有几个表增加了字段,大家可自行比较一下。

数据库模型文件下载地址:http://www.javayou.com/download/mydlog.cdm?id=uniqueid

本发行版还是使用自带Access数据库,如有需要其他数据库的建库脚本,可自行从数据库模型文件中生成,有困难的用户可直接联系我!

[Edit on 2004-10-07 10:24:36 By ld]
标签: DLOG 
通过电脑发布 #1楼 评论时间:2004-10-6 23:03 (Wednesday)
本站已经更新为DLOG4J 1.1 版!
邮箱 | 网址 |  
通过电脑发布 #2楼 评论时间:2004-10-6 23:03 (Wednesday)

好东西,值得研究……好想拜你为师呀

邮箱 | 网址 |  
通过电脑发布 #3楼 评论时间:2004-10-7 10:29 (Thursday)

下图是再日文操作系统下本文的显示,经过研究发现原因是之前直接从WORD拷贝所有文字的日记编辑器导致,去掉那些无谓的格式后问题就解决了!

邮箱 | 网址 |  
通过电脑发布 #4楼 评论时间:2004-10-7 18:24 (Thursday)

发现图片上传是大小处理有点问题,请下载下面的压缩包并解压覆盖到{webapp}\popups目录下!

http://www.javayou.com/download/dlog4j_popups.zip?id=uniqueid

邮箱 | 网址 |  
通过电脑发布 #5楼 评论时间:2004-10-8 11:17 (Friday)

将数据库更改为mysql后从数据库中取出的信息全是乱码,再添加日志存入数据库,数据库中出入的中文数据是????,请问这个问题这样解决

我的环境是windowxp resin-3.0.8 mysql3.20

邮箱 | 网址 |  
通过电脑发布 #6楼 评论时间:2004-10-8 11:32 (Friday)

你用的是哪个驱动包啊,是不是DLOG4j中自带的那个jar包啊?可以在数据源的配置中添加下面配置试试,不行再找我,我的QQ是 7118343           
<set-property property="encoding" value="true" /> 

邮箱 | 网址 |  
通过电脑发布 #7楼 评论时间:2004-10-8 14:23 (Friday)

非常感谢,好用了

邮箱 | 网址 |  
通过电脑发布 #8楼 评论时间:2004-10-8 15:33 (Friday)

用mysql数据库又一问题

当访问【访问统计】栏时,出现下列错误信息

java.sql.SQLException: Syntax error or access violation, message from server: "You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT distinct remoteAddr,userAgent FROM dlog_visit ) t1' at l" at com.caucho.jsp.PageContextImpl.handlePageException(PageContextImpl.java:957) at _jsp._web_22dinf._jsp._visitstat__jsp._jspService(_visitstat__jsp.java:578) at com.caucho.jsp.JavaPage.service(JavaPage.java:75) at com.caucho.jsp.Page.pageservice(Page.java:571) at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:155) at com.caucho.server.webapp.DispatchFilterChain.doFilter(DispatchFilterChain.java:129) at com.caucho.server.cache.CacheFilterChain.doFilter(CacheFilterChain.java:177) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:221) at com.caucho.server.webapp.RequestDispatcherImpl.include(RequestDispatcherImpl.java:476) at com.caucho.server.webapp.RequestDispatcherImpl.include(RequestDispatcherImpl.java:345) at com.caucho.jsp.PageContextImpl.include(PageContextImpl.java:807) at com.caucho.jsp.PageContextImpl.include(PageContextImpl.java:762) at dlog4j.tags.LayoutTag.doEndTag(LayoutTag.java:67) at _jsp._web_22dinf._jsp._layout._container__jsp._jspService(_container__jsp.java:109) at com.caucho.jsp.JavaPage.service(JavaPage.java:75) at com.caucho.jsp.Page.pageservice(Page.java:571) at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:155) at com.caucho.server.webapp.DispatchFilterChain.doFilter(DispatchFilterChain.java:129) at com.caucho.server.cache.CacheFilterChain.doFilter(CacheFilterChain.java:177) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:221) at com.caucho.server.webapp.RequestDispatcherImpl.include(RequestDispatcherImpl.java:476) at com.caucho.server.webapp.RequestDispatcherImpl.include(RequestDispatcherImpl.java:345) at dlog4j.EmbedPageServlet.doGet(EmbedPageServlet.java:112) at javax.servlet.http.HttpServlet.service(HttpServlet.java:126) at javax.servlet.http.HttpServlet.service(HttpServlet.java:103) at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:113) at dlog4j.UnicodeFilter.doFilter(UnicodeFilter.java:58) at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:84) at com.caucho.server.cache.CacheFilterChain.doFilter(CacheFilterChain.java:177) at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:177) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:221) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:263) at com.caucho.server.port.TcpConnection.run(TcpConnection.java:331) at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:464) at com.caucho.util.ThreadPool.run(ThreadPool.java:408) at java.lang.Thread.run(Thread.java:534) Caused by: java.sql.SQLException: Syntax error or access violation, message from server: "You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT distinct remoteAddr,userAgent FROM dlog_visit ) t1' at l" at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1905) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1109) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1203) at com.mysql.jdbc.Connection.execSQL(Connection.java:2090) at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1496) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:205) at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at web.struts._Statement.invoke(_Statement.java:46) at $Proxy2.executeQuery(Unknown Source) at dlog4j.SiteStatManager.statUserVisit(SiteStatManager.java:276) at _jsp._web_22dinf._jsp._visitstat__jsp._jspService(_visitstat__jsp.java:202) ... 34 more

邮箱 | 网址 |  
通过电脑发布 #9楼 评论时间:2004-10-8 15:35 (Friday)
对了,mysql数据库我是通过Access2MySQL Pro程序转换而来的
邮箱 | 网址 |  
通过电脑发布 #10楼 评论时间:2004-10-8 15:44 (Friday)

我已经把DLOG4J的MySQL 3.23的数据库脚本上传了,点击这里下载
http://www.javayou.com/download/dlog4j_mysql_323.sql?id=uniqueid
试一下这个,如果不行的话修改一下hibernate.cfg.xml
<property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>

邮箱 | 网址 |  
通过电脑发布 #11楼 评论时间:2004-10-8 15:56 (Friday)
还是同样的错误
邮箱 | 网址 |  
通过电脑发布 #12楼 评论时间:2004-10-8 16:04 (Friday)
我知道了:( MySQL不支持子查询所致,这个查询不是通过Hibernate完成的! 我想办法看看啊!
邮箱 | 网址 |  
通过电脑发布 #13楼 评论时间:2004-10-8 17:08 (Friday)

问题出在这里,这条SQL语句无法在MySQL中执行!

SELECT count(1) FROM (SELECT distinct remoteAddr,userAgent FROM dlog_visit) t1

大家帮忙想想办法啊

邮箱 | 网址 |  
通过电脑发布 #14楼 评论时间:2004-10-8 17:26 (Friday)

这样是否可以

 select count(distinct remoteAddr) from dlog_visit t1;

邮箱 | 网址 |  
通过电脑发布 #15楼 评论时间:2004-10-8 17:31 (Friday)

当然可以了,可是你的MySQL可以了,但是Access数据库又不行了!

解决了,给你发了消息了,给我发个邮件,我把更新的类给你!

邮箱 | 网址 |  
通过电脑发布 #16楼 评论时间:2004-10-8 19:52 (Friday)

关注中,能不能解决了也告诉我声啊

egain88@yahoo.com.cn

邮箱 | 网址 |  
通过电脑发布 #17楼 评论时间:2004-10-8 20:57 (Friday)

给我发一个更新的类吧。

邮箱 | 网址 |  
通过电脑发布 #18楼 评论时间:2004-10-9 14:59 (Saturday)

谢谢刘冬,我的调试好了。

http://www.egain.com.cn/

环境:

Win2000+Apache+tomcat+mysql+truehost

所以有点慢噢。再次谢谢刘冬!

邮箱 | 网址 |  
通过电脑发布 #19楼 评论时间:2004-10-9 15:02 (Saturday)

truehost是什么东东啊?不过你那个LOGO也太不专业了,有点抄袭之嫌啊,哈哈哈! 

你可以自行修改{web-inf}\jsp\layout\html_layout.htm 来修改页面布局啊!

邮箱 | 网址 |  
通过电脑发布 #20楼 评论时间:2004-10-9 16:42 (Saturday)

哈,就是因为菜,一切都是照猫画虎了,嘿!!

truehost 是动态域名解析的软件,我服务器在办公室,用的是私网ip,唉,刚出道,还请多关照啊!

邮箱 | 网址 |  
通过电脑发布 #21楼 评论时间:2004-10-9 16:45 (Saturday)
对了,发布flash还是不能直接用日记编辑器的插入flash功能,只能手写代码了。
邮箱 | 网址 |  
通过电脑发布 #22楼 评论时间:2004-10-9 21:27 (Saturday)
下载了一个试了一下,所有的设置都是默认(包括数据库),速度太慢,我的环境win2000(P4 /2.0g/1g内存)+tomcat5.029+access,加入十多条日记后,检索速度近20秒.我觉得你的连接池的用法可能有问题.
邮箱 | 网址 |  
通过电脑发布 #23楼 评论时间:2004-10-10 09:17 (Sunday)
很多朋友机器比你差多了都没有这个情况哦,我开发的机器更没法跟你比了,但是检索速度都不会感到慢!不知道是每次检索都慢呢,还是偶尔发生呢?
邮箱 | 网址 |  
通过电脑发布 #24楼 评论时间:2004-10-10 15:26 (Sunday)

每一次都很慢,我在另一台机器又试了一下,还是很慢.我拷贝了同一份数据库文件,会不会是数据库文件有问题,对内容有什么限制吗?我现在的数据库中共有14篇文章,大小2.3M.

邮箱 | 网址 |  
通过电脑发布 #25楼 评论时间:2004-10-10 15:46 (Sunday)

才2.3兆,我的都四五十兆了! 你这个问题不具备普遍性,没辙了,不行你换别的库看看,比如SQL Server之类的,需要建库脚本的话我给你发邮件!

邮箱 | 网址 |  
通过电脑发布 #26楼 评论时间:2004-10-10 20:46 (Sunday)
谢谢你的热情,如果可以,请给我发一份MYSQL的建库脚本.另外如果感兴趣,我可以将我现在的数据库打包给你发过去,你测一下,看看问题到底出在哪里.我的邮箱是zslun@beelink.com
邮箱 | 网址 |  
通过电脑发布 #27楼 评论时间:2004-10-10 21:42 (Sunday)

请问什么时候发布源码啊?盼望中......

邮箱 | 网址 |  
通过电脑发布 #28楼 评论时间:2004-10-10 23:47 (Sunday)

源码正在整理中,因为有些功能需要改进,同时也会增加一些新的内容。

本站下载页面:http://www.javayou.com/pages/download.jspe

MySQL脚本下载地址:
http://www.javayou.com/download/dlog4j_mysql_323.sql?id=uniqueid

 

邮箱 | 网址 |  
通过电脑发布 #29楼 评论时间:2004-10-11 11:10 (Monday)
预计什么时候发布?很想拿你的东东做一个多用户的版本,一起做,如何?不过偶是新手的说
邮箱 | 网址 |  
通过电脑发布 #30楼 评论时间:2004-10-11 11:14 (Monday)
近期(一两个礼拜内)会发布1.2版以及源码
邮箱 | 网址 |  
通过电脑发布 #31楼 评论时间:2004-10-11 12:02 (Monday)

呵呵,几天没来,变样了...........

现在正在下载dlog1.1中午搞一下............

邮箱 | 网址 |  
通过电脑发布 #32楼 评论时间:2004-10-11 12:37 (Monday)
不是吧,这几天都没变样啊:) 最好还是等几天后的DLOG4j 1.2版吧,修正了1.1版的不少BUG,还有完善一些功能!
邮箱 | 网址 |  
通过电脑发布 #33楼 评论时间:2004-10-11 12:46 (Monday)

呵呵.........刚刚我只写了个1.0-to-1.1-migration.sql(用于mysql的1.0版本到1.1版本的升级),还有些东西没做修正,呵呵,那我就暂时不更新为1.1吧。听刘领导的,到时候将这些脚本的升级文件也会公布出来..

邮箱 | 网址 |  
通过电脑发布 #34楼 评论时间:2004-10-11 12:49 (Monday)
1.1 以后的数据库结构基本上都不会有什么改动,至少到目前为止没有,所以你这个脚本还是可以用的
邮箱 | 网址 |  
通过电脑发布 #35楼 评论时间:2004-10-11 14:10 (Monday)

终于倒到MYSQL上了,由于3.23版不支持UTF8,因此建议用户4.1版,   配置文件中修改        <set-property property="defaultAutoCommit" value="false" />,否则,增加文章时出错,但仍能加到数据库中.              
增加 <set-property property="characterEncoding" value="utf-8" />,不然出现乱码.

不过还有一问题:在修改已有的文章时仍出现异常,不过修改仍然成功.好像问题还是autocommit引起的(新增文章正常). 

邮箱 | 网址 |  
通过电脑发布 #36楼 评论时间:2004-10-11 14:13 (Monday)

 多谢多谢,希望大家在使用中发现的问题以及解决办法都贴出来共享一下,感谢 icefire

不过你的这个参数characterEncoding好像有问题,因为查了DBCP的API文档发现BasicDataSource并没有这样一个属性,这个可能会导致数据源初始化失败哦!

邮箱 | 网址 |  
通过电脑发布 #37楼 评论时间:2004-10-11 15:05 (Monday)

<set-property property="characterEncoding" value="utf-8" />,这一设置确实对数据库字符集有效,很多场合我都用过.

另外,在MYSQL上,我测试了几台机器,速度快多了.

原来一直想写这么个东西,作为个人收集与管理资料用,现在我可以省事了.大家都得谢谢你了.

邮箱 | 网址 |  
通过电脑发布 #38楼 评论时间:2004-10-11 15:09 (Monday)
好的,有时间我也试试这个参数:D
邮箱 | 网址 |  
通过电脑发布 #39楼 评论时间:2004-10-11 23:15 (Monday)
Hibernate: select this.sumid as sumid0_, this.sumdate as sumdate0_, this.visitCount as visitCount0_, this.siteid as siteid0_ from dlog_summary this where this.siteid=? order by this.sumdate desc
23:00:53,039  WARN JDBCExceptionReporter:38 - SQL Error: 208, SQLState: 42000
23:00:53,039 ERROR JDBCExceptionReporter:46 - dlog_summary not found. Specify owner.objectname or use sp_help to check whether the object exists (sp_help may produce lots of output).
偶查了一下,没有dlog_summary这个表啊?怎么回事?
邮箱 | 网址 |  
通过电脑发布 #40楼 评论时间:2004-10-12 09:42 (Tuesday)
看来你是用旧程序来跑新数据库啊,重新下载一个新版本吧.我现在火车上,有什么问题回去再说:)
邮箱 | 网址 |  
通过电脑发布 #41楼 评论时间:2004-10-13 10:28 (Wednesday)

写日记的时候,如果不填写关键字表单,提交的时候会出现异常。

不错的东东,学习ing

邮箱 | 网址 |  
通过电脑发布 #42楼 评论时间:2004-10-13 11:13 (Wednesday)

什么异常?我的怎么不会?

你的数据库升级了吗?

邮箱 | 网址 |  
通过电脑发布 #43楼 评论时间:2004-10-13 12:51 (Wednesday)

这个问题应该是我的一个疏漏,因为PowerDesigner生成的Access数据库文件允许为空的字段都设置为:允许为空,但是不允许空字符串,因此插入的时候可能导致出错。
最快捷的办法是修改dlog_journal表的logkeys字段,让其允许空字符串。

邮箱 | 网址 |  
通过电脑发布 #44楼 评论时间:2006-11-10 13:42 (Friday)
sameer
????                          ????
  ??                               ??
    ?                              ?
      ?                           ?
        ?                       ?
          ?                   ?
            ?                ?
               ?           ?
                  ?       ?
                     ? ?   
 
 
姓名: 
邮箱:  {可选}
网址:  {可选} 此评论只有我和写日记的人查阅
校验码: ... <我看不清楚>
网记为您提供手机和互联网同步的个人主页,带给你不一样的体验