不知道现在你的水平 怎么样。如果学了简单的DAO模式你可以采用DAO模式,将代码做简单的分层然后显示。如果没有,先查出来,然后对结果集进行遍历,最后在遍历中使用tr>td的方式进行格式化。这就是数据库内容的显示。
java从数据库中读取的数据显示在jsp的网页当中的方法是迭代table。
1、迭代数据的jsp页面代码:
<table>
<tr>
<th>Name</th>
<th>Email</th>
<th>Address</th>
<th>Phone No</th>
</tr>
<s:iterator value="users">
<tr>
<td><s:property value="name"/></td>
<td><s:property value="email"/></td>
<td><s:property value="address"/></td>
<td><s:property value="phno"/></td>
</tr>
</s:iterator>
</table>
2。后台java查询数据
public class RegisterAction extends ActionSupport{
String name,pwd,email,address;
int phno;
public RegisterAction() {}
List<User> users = new ArrayList<User>();
UserDao udao = new UserDao();
//Getters and setters
public String execute() throws Exception {
User u=new User();
usetName(name);
usetEmail(email);
usetAddress(address);
usetPhno(phno);
usetPwd(pwd);
udaoaddUser(u);
return "success";
}
public String listAllUsers(){
users = udaogetUsers();
Systemoutprintln("In Action, "+users);
return "success";
}
}
我把核心代码给你,你一定要看懂这个代码,否则还是写不出的,注释我都标的很详细了。前几行是我的方法,作用的返回所有课程,你知道意思就行,因为不一定要这样写,你采用你的方式遍历一边数据库表项并循环插入到dataset就行,其实很简单的~
<%
CourseDAO dao = new CourseDAO();//dao类
ArrayList<Courseinfo> list = (ArrayList<Courseinfo>) daoallCourses();//这个方法是返回所有的课程
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
for (int i = 0; i < listsize(); i++) { //遍历所有课程,把内容依次添加到dataset里
datasetaddValue(listget(i)getCoursenum(), "totalnum", listget(i)getCoursename());
}
JFreeChart freechart = ChartFactorycreateBarChart3D("选课信息统计图",
"课程名称", "选课人数", dataset, PlotOrientationVERTICAL, true,true, true);
freechartsetBackgroundPaint(ColorLIGHT_GRAY);
freechartgetTitle()setPaint(ColorBLUE);
freechartgetLegend()setVisible(true);
Font font = new Font("SimSun", 10, 20);
TextTitle txtTitle = null;
txtTitle = freechartgetTitle();
txtTitlesetFont(font);
CategoryPlot plot = freechartgetCategoryPlot();
CategoryAxis domainAxis = plotgetDomainAxis();
//设置距离左端距离
domainAxissetLowerMargin(002);
//设置距离右端距离
domainAxissetUpperMargin(002);
domainAxissetLabelFont(new Font("黑体", FontPLAIN, 14));
//水平底部标题
domainAxissetTickLabelFont(new Font("宋体", FontPLAIN, 14));
//垂直标题
ValueAxis rangeAxis = plotgetRangeAxis();//获取柱状
rangeAxissetLabelFont(new Font("黑体", FontPLAIN, 14));
plotsetDomainAxis(domainAxis);
//2
rangeAxissetUpperMargin(008);
//设置最低的一个柱与底端的距离
rangeAxissetLowerMargin(024);
plotsetRangeAxis(rangeAxis);
//3
BarRenderer3D bar = new BarRenderer3D();
barsetBaseOutlinePaint(ColorBLACK);
//设置 Wall 的颜色
barsetWallPaint(ColordarkGray);
//设置每种代表的柱的颜色
barsetSeriesPaint(0, new Color(255, 0, 0));
barsetSeriesPaint(1, new Color(0, 255, 0));
barsetSeriesPaint(2, ColorBLUE);
//设置每种代表的柱的 Outline 颜色
barsetSeriesOutlinePaint(0, ColorBLACK);
barsetSeriesOutlinePaint(1, ColorBLACK);
barsetSeriesOutlinePaint(2, ColorBLACK);
//设置平行柱的之间距离
barsetItemMargin(002);
//显示每个柱的数值,并修改该数值的字体属性
barsetItemLabelGenerator(new StandardCategoryItemLabelGenerator());
barsetDrawBarOutline(true);
barsetIncludeBaseInRange(true);
barsetItemLabelFont(new Font("华文新魏", FontPLAIN, 8));
barsetItemLabelsVisible(true);
plotsetRenderer(bar);
BarRenderer3D renderer = (BarRenderer3D) plotgetRenderer();
renderersetWallPaint(ColorPINK);
plotsetForegroundAlpha(100f);
//注意:此句很关键,若无此句,那数字的显示会被覆盖,给人数字没有显示出来的问题
renderersetBasePositiveItemLabelPosition(new ItemLabelPosition(
ItemLabelAnchorOUTSIDE12, TextAnchorBASELINE_LEFT));
renderersetItemLabelAnchorOffset(10D);
GradientPaint gradientpaint = new GradientPaint(00F, 00F,
Colorblue, 00F, 00F, new Color(0, 0, 64)); //设定特定颜色
GradientPaint gradientpaint1 = new GradientPaint(00F, 00F,
Colorcyan, 00F, 00F, new Color(0, 64, 0));
renderersetSeriesPaint(0, gradientpaint);
renderersetSeriesPaint(1, gradientpaint1);
//设置柱的 Outline 颜色
renderersetSeriesOutlinePaint(0, ColorBLACK);
renderersetSeriesOutlinePaint(1, ColorBLACK);
//设置每个category所包含的平行柱的之间距离
renderersetItemMargin(01);
//显示每个柱的数值,并修改该数值的字体属性
renderer
setItemLabelGenerator(new StandardCategoryItemLabelGenerator());
String filename = ServletUtilitiessaveChartAsPNG(freechart, 600,
400, null, session);
String grapUrl = requestgetContextPath()
+ "/DisplayChartfilename=" + filename;
%>
<center>
<img src="<%=grapUrl%>" width="700" height="500" border="0"
usemap="#<%=filename%>">
</center>
1通过jdbc连接上数据库,并从中获取一个连接。(建议由一个工具类提供)
2创建一个jsp页面、一个servlet类和一个service业务逻辑类。
3当点击查询按钮时调用servlet并把文本框中的参数传递过去。
4在servlet中获取页面传递过来的参数,并调用service中方法(此方法负责条件查询并返回list集合)
5servlet中把查询集合放到request作用域并转发到jsp页面进行迭代,把数据取出展示即可。
你要显示数据库中的数据,首先要建立连接,连到数据库。至于在servlet还是struts类,还是jsp页面是设计问题。最笨的方法就是在jsp里面嵌入java代码,连接数据库,写查询语句,将返回结果保存在容器中,如vector,然后显示。
以上就是关于在JSP界面中以表格形式显示数据库内的内容全部的内容,包括:在JSP界面中以表格形式显示数据库内的内容、ssh2怎样在jsp页面显示在数据库中查询到的数据、jsp页面 jfreechart调用数据库中的数据并以柱状图的形式显现出来等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)