论文部分内容阅读
[摘 要]本文首先讨论了图书馆建立科研成果数据库平台的必要性,接着给出建立科研成果数据库平台的构架及其实施方案。
[关键词]科研成果 数据库平台
中图分类号:TD672 文献标识码:A 文章编号:1009-914X(2016)15-0309-02
1 图书馆建立科研成果数据库的平台必要性
首先,科研管理部门由于任务多、人手少,仅开展科研管理工作,比如发布科研项目申报通知,统计科研成果数据、上报各种项目数据等工作,没有精力没有意识了解项目发展的最新动态向研究人员提供专业性服务。[1]为了提高研究人员获取科研信息的质量和效率,图书馆可以利用自已的专业优势协同科研管理部门,主动为科研人员提供专业服务。
国内外有许多图书馆的科研信息服务工作做的非常出色,比如美国斯坦福医学院图书馆网站专门一个栏目叫做“支持作者”,为师生的论文写作提供全生命周期的服务,包括文献传递、美国国立卫生研究院出版政策解读、写作课程、版权咨询等,并提供超过3500种期刊的投稿指南说明等信息。[2]
目前,我们图书馆还不能提供这么专深的服务,但是可以从基础工作做起,在图书馆建立我院教职工的科研成果资源数据库。虽然,大家可以通过网络追踪了解各研究领域在国内外的前沿动态,但是往往不知道身边的同事在做什么科研工作,有过哪些科研成果。作为普通用户,通过科研管理系统,也只能管理自己的科研成果,却看不到本校其他老师的科研情况,比如做过哪些项目,发表过哪些文章。在科研方面,大家互不了解,不能在学院内部形成良好的科研氛围。
其次,我院科研管理系统是2012年正式投入使用,并不包括2012年之前的科研成果数据,因此我们收集了自2002年学院成立以来所有的科研成果目录,并以科研成果目录为内容建立了特色资源数据库,以便于实现数据的浏览和查询。
2 科研成果数据库平台构架
本系统采用模块化管理模式,基于B/S结构,前台使用JSP开发,后台采用MySQL存储数据。
2.1 数据库设计
本系统采用MySQL存储数据。MySQL是一个关系型数据库管理系统,可以方便地支持上千万条记录的数据。作为一个开放源代码的数据库,可以针对不同的应用进行相应的修改。同时,MySQL还有体积小、速度快、总体拥有成本低,开源等优点。[3]本系统收集了自2002年我院教职工的科研成果,大约有1万条目录,从数量角度考虑,MySQL完全可以满足需要。我院教职工的科研成果包括以下3方面内容,科研项目、发表论文、著作或教材。
要想设计一个结构合理的关系型数据库,必须满足一定的范式。本数据库共包含三个表,分别是课题或科研项目、发表论文、著作或教材。每个表的结构都满足第三范式,表中的所有字段值都是不可分解的原子值。
2.2 后台管理
数据库平台包括后台管理和前台展示两部分内容。后台管理内容如图1所示,包括系统管理、用户管理、日志管理。
系统管理包括:系统参数的配置,以及记录的增加、删除、修改。
用户管理包括:用户的增加、删除、修改。
日志管理包括:用户浏览记录的增加、删除、修改。
2.3 前台展示
前台展示如图2所示:
3 科研成果数据库平台实现
3.1 技术路线
系统开发配置入下:
架构模式:Web开发,
IDE:Eclipse,
服务器:Tomcat,
数据库:MySQL,
开发语言:JSP,
开发模式:JSP+JavaBean模式。
JSP+JavaBean模式适用于中小规模项目的快速开发,与本系统的规模和需求相适应。在这种模式中,JSP页面独自响应请求并将处理结果返回客户,所有的数据库操作通过JavaBean来实现。
3.2 关键代码
(1)JavaBean中数据库连接:
public class ContactBean
{
private Connection con;
public Statement st;
public ResultSet rs;
//初始化链接;
public ContactBean()//构造函数,默认执行。
{
String CLASSFORNAME="com.mysql.jdbc.Driver";
String uri="jdbc:mysql://localhost/thef";
String user="root";
String password="123456";
con=null;
st=null;
rs=null;
try
{
Class.forName(CLASSFORNAME);
con=DriverManager.getConnection(uri,user,password);
}
catch(Exception e)
{
e.printStackTrace();
}
}
(2)分页显示:
<%String str=(String)request.getParameter("Page");
if(str==null) {
str="0";
}
int pagesize=50;
rs.last();
int RecordCount=rs.getRow();
rs.first();
int maxPage=0;
maxPage=(RecordCount%pagesize==0)?(RecordCount/pagesize):(RecordCount/pagesize+1);
int Page=Integer.parseInt(str);
if(Page<1){
Page=1;
}else
{
if(Page>maxPage){
Page=maxPage;
}
}
rs.absolute((Page-1)*pagesize+1);
……
} %>
4 总结
为了进一步促进学院的科研工作,图书馆有义务与科研处协同开展科研服务,更好的为科研人员提供专业服务。本系统的建成,有助于科研人员迅速便捷的了解本院的科研成果,掌握科研近况。
由于我馆特色资源库建设刚刚起步,本系统数据库的内容仅仅是科研成果目录。下一步工作是在本系统的基础上,建成目录、文摘和全文混合的科研成果数据库系统。
参考文献
[1] 耿浩.科研信息管理系统的发展对图书馆服务的启示[J].图书馆学刊,2015年第4期:61-63.
[2] 钱晓红.高校科研管理部门与图书馆协同开展科研信息服务[J].大学图书馆学报,2014年第3期:91-96.
[3] 潘凯华.MySQL快速入门[M].北京:清华出版社,2012.
梅东霞(1979-8),女,硕士研究生,毕业于北京化工大学计算机专业;现在北京农业职业学院图书馆从事数字资源建设与维护工作。
[关键词]科研成果 数据库平台
中图分类号:TD672 文献标识码:A 文章编号:1009-914X(2016)15-0309-02
1 图书馆建立科研成果数据库的平台必要性
首先,科研管理部门由于任务多、人手少,仅开展科研管理工作,比如发布科研项目申报通知,统计科研成果数据、上报各种项目数据等工作,没有精力没有意识了解项目发展的最新动态向研究人员提供专业性服务。[1]为了提高研究人员获取科研信息的质量和效率,图书馆可以利用自已的专业优势协同科研管理部门,主动为科研人员提供专业服务。
国内外有许多图书馆的科研信息服务工作做的非常出色,比如美国斯坦福医学院图书馆网站专门一个栏目叫做“支持作者”,为师生的论文写作提供全生命周期的服务,包括文献传递、美国国立卫生研究院出版政策解读、写作课程、版权咨询等,并提供超过3500种期刊的投稿指南说明等信息。[2]
目前,我们图书馆还不能提供这么专深的服务,但是可以从基础工作做起,在图书馆建立我院教职工的科研成果资源数据库。虽然,大家可以通过网络追踪了解各研究领域在国内外的前沿动态,但是往往不知道身边的同事在做什么科研工作,有过哪些科研成果。作为普通用户,通过科研管理系统,也只能管理自己的科研成果,却看不到本校其他老师的科研情况,比如做过哪些项目,发表过哪些文章。在科研方面,大家互不了解,不能在学院内部形成良好的科研氛围。
其次,我院科研管理系统是2012年正式投入使用,并不包括2012年之前的科研成果数据,因此我们收集了自2002年学院成立以来所有的科研成果目录,并以科研成果目录为内容建立了特色资源数据库,以便于实现数据的浏览和查询。
2 科研成果数据库平台构架
本系统采用模块化管理模式,基于B/S结构,前台使用JSP开发,后台采用MySQL存储数据。
2.1 数据库设计
本系统采用MySQL存储数据。MySQL是一个关系型数据库管理系统,可以方便地支持上千万条记录的数据。作为一个开放源代码的数据库,可以针对不同的应用进行相应的修改。同时,MySQL还有体积小、速度快、总体拥有成本低,开源等优点。[3]本系统收集了自2002年我院教职工的科研成果,大约有1万条目录,从数量角度考虑,MySQL完全可以满足需要。我院教职工的科研成果包括以下3方面内容,科研项目、发表论文、著作或教材。
要想设计一个结构合理的关系型数据库,必须满足一定的范式。本数据库共包含三个表,分别是课题或科研项目、发表论文、著作或教材。每个表的结构都满足第三范式,表中的所有字段值都是不可分解的原子值。
2.2 后台管理
数据库平台包括后台管理和前台展示两部分内容。后台管理内容如图1所示,包括系统管理、用户管理、日志管理。
系统管理包括:系统参数的配置,以及记录的增加、删除、修改。
用户管理包括:用户的增加、删除、修改。
日志管理包括:用户浏览记录的增加、删除、修改。
2.3 前台展示
前台展示如图2所示:
3 科研成果数据库平台实现
3.1 技术路线
系统开发配置入下:
架构模式:Web开发,
IDE:Eclipse,
服务器:Tomcat,
数据库:MySQL,
开发语言:JSP,
开发模式:JSP+JavaBean模式。
JSP+JavaBean模式适用于中小规模项目的快速开发,与本系统的规模和需求相适应。在这种模式中,JSP页面独自响应请求并将处理结果返回客户,所有的数据库操作通过JavaBean来实现。
3.2 关键代码
(1)JavaBean中数据库连接:
public class ContactBean
{
private Connection con;
public Statement st;
public ResultSet rs;
//初始化链接;
public ContactBean()//构造函数,默认执行。
{
String CLASSFORNAME="com.mysql.jdbc.Driver";
String uri="jdbc:mysql://localhost/thef";
String user="root";
String password="123456";
con=null;
st=null;
rs=null;
try
{
Class.forName(CLASSFORNAME);
con=DriverManager.getConnection(uri,user,password);
}
catch(Exception e)
{
e.printStackTrace();
}
}
(2)分页显示:
<%String str=(String)request.getParameter("Page");
if(str==null) {
str="0";
}
int pagesize=50;
rs.last();
int RecordCount=rs.getRow();
rs.first();
int maxPage=0;
maxPage=(RecordCount%pagesize==0)?(RecordCount/pagesize):(RecordCount/pagesize+1);
int Page=Integer.parseInt(str);
if(Page<1){
Page=1;
}else
{
if(Page>maxPage){
Page=maxPage;
}
}
rs.absolute((Page-1)*pagesize+1);
……
} %>
4 总结
为了进一步促进学院的科研工作,图书馆有义务与科研处协同开展科研服务,更好的为科研人员提供专业服务。本系统的建成,有助于科研人员迅速便捷的了解本院的科研成果,掌握科研近况。
由于我馆特色资源库建设刚刚起步,本系统数据库的内容仅仅是科研成果目录。下一步工作是在本系统的基础上,建成目录、文摘和全文混合的科研成果数据库系统。
参考文献
[1] 耿浩.科研信息管理系统的发展对图书馆服务的启示[J].图书馆学刊,2015年第4期:61-63.
[2] 钱晓红.高校科研管理部门与图书馆协同开展科研信息服务[J].大学图书馆学报,2014年第3期:91-96.
[3] 潘凯华.MySQL快速入门[M].北京:清华出版社,2012.
梅东霞(1979-8),女,硕士研究生,毕业于北京化工大学计算机专业;现在北京农业职业学院图书馆从事数字资源建设与维护工作。