1. 什么是SSE_180_TOTAL_RETURN_INDEX?
1、上证180全收益指数(SSE 180 TOTAL RETURN INDEX)由 上海证券交易所 编制,是 上证180指数 的衍生指数 ,与上证180指数的区别在于 指数 的计算中将样本股分红计入指数 收益,供投资者从不同角度考量指数走势。
2. 帮忙翻译一下谢谢了: Total shareholders return for 2016
Total shareholders return for 20160was a strong 15.3%, significantly exceeding most indices, including the S&P 500 index.
对于20160was 15.3%强总股东回报,大大超过大多数指标,包括标准普尔500指数。
3. Total Shareholder Return 是什么意思啊啊?
同学你好,很高兴为您解答!
Total Shareholder Return的翻译是股东总回报,您所说的这个词语,是属于CMA核心词汇的一个,这个词的意义如下:1. 一种股票对投资者的总回报(资本收益加股息)。2. 投资者在持有期内获得现金流的内部回报率。
希望高顿网校的回答能帮助您解决问题,更多财会问题欢迎提交给高顿企业知道。
高顿祝您生活愉快!
4. msci world total return一般指什么指标
你好!
msci world total return
摩根士丹利资本国际全球总回报
5. return on assets怎么算
Return On Assets,资产收益率
其计算公式为:ROA=[Net income+(1-tax rate)(interest expense)+minority interest in earnings]/average total assets
资产收益率= 息税前净利润EBIT / 总资产总额Assets
资产收益率指标将资产负债表、损益表中的相关信息有机结合起来,是银行运用其全部资金获取利润能力的集中体现。
另一计算公式:
资产收益率ROA= 净利润率NPM × 资产利用率AU
其中:
净利润率NPM=税后净收入/营业总收入
反映银行费用管理(或成本控制)的有效性。
资产利用率AU=营业总收入/资产总额=(主营业务收入+非主营业务收入)/资产总额
反映银行业务经营及获利能力。
6. jsp与mysql的分页
<%
//变量声明
java.sql.Connection sqlCon; //数据库连接对象
java.sql.Statement sqlStmt; //SQL语句对象
java.sql.ResultSet sqlRst; //结果集对象
java.lang.String strCon; //数据库连接字符串
java.lang.String strSQL; //SQL语句
int intPageSize; //一页显示的记录数
int intRowCount; //记录总数
int intPageCount; //总页数
int intPage; //待显示页码
java.lang.String strPage;
int i;
//设置一页显示的记录数
intPageSize = 2;
//取得待显示页码
strPage = request.getParameter("page");
if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据
intPage = 1;
}
else{//将字符串转换成整型
intPage = java.lang.Integer.parseInt(strPage);
if(intPage<1) intPage = 1;
}
//装载JDBC驱动程序
java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
//设置数据库连接字符串
strCon = "jdbc:oracle:thin:@linux:1521:ora4cweb";
//连接数据库
sqlCon = java.sql.DriverManager.getConnection(strCon,"hzq","hzq");
//创建一个可以滚动的只读的SQL语句对象
sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
//准备SQL语句
strSQL = "select name,age from test";
//执行SQL语句并获取结果集
sqlRst = sqlStmt.executeQuery(strSQL);
//获取记录总数
sqlRst.last();
intRowCount = sqlRst.getRow();
//记算总页数
intPageCount = (intRowCount+intPageSize-1) / intPageSize;
//调整待显示的页码
if(intPage>intPageCount) intPage = intPageCount;
%>
JSP数据库操作例程 - 数据分页显示 - JDBC 2.0 - Oracle
姓名
年龄
<%
if(intPageCount>0){
//将记录指针定位到待显示页的第一条记录上
sqlRst.absolute((intPage-1) * intPageSize + 1);
//显示数据
i = 0;
while(i<intPageSize && !sqlRst.isAfterLast()){
%>
<%
sqlRst.next();
i++;
}
}
%>
第页 共页 ">下一页 1){%>">上一页
<%
//关闭结果集
sqlRst.close();
//关闭SQL语句对象
sqlStmt.close();
//关闭数据库
sqlCon.close();
%>
可以试试先!
祝你好运!
----------------------------------
也可以用jsp+xml+html来实现,下面给出一个saucer(思归)给的xml+html的分页例子,不妨参考一下:
Gambardella, Matthew
XML Developer's Guide
Computer
44.95
2000-10-01
An in-depth look at creating applications
with XML.
Ralls, Kim
Midnight Rain
Fantasy
5.95
2000-12-16
A former architect battles corporate zombies,
an evil sorceress, and her own childhood to become queen
of the world.
Corets, Eva
Maeve Ascendant
Fantasy
5.95
2000-11-17
After the collapse of a nanotechnology
society in England, the young survivors lay the
foundation for a new society.
Corets, Eva
Oberon's Legacy
Fantasy
5.95
2001-03-10
In post-apocalypse England, the mysterious
agent known only as Oberon helps to create a new life
for the inhabitants of London. Sequel to Maeve
Ascendant.
Corets, Eva
The Sundered Grail
Fantasy
5.95
2001-09-10
The two daughters of Maeve, half-sisters,
battle one another for control of England. Sequel to
Oberon's Legacy.
Randall, Cynthia
Lover Birds
Romance
4.95
2000-09-02
When Carla meets Paul at an ornithology
conference, tempers fly as feathers get ruffled.
Thurman, Paula
Splish Splash
Romance
4.95
2000-11-02
A deep sea diver finds true love twenty
thousand leagues beneath the sea.
Knorr, Stefan
Creepy Crawlies
Horror
4.95
2000-12-06
An anthology of horror stories about roaches,
centipedes, scorpions and other insects.
TitleAuthorGenrePublish DatePrice
------------------------------------
分页显示的模板程序
<%
int PageSize = 10;//设置一页显示的记录数
int PageNum = 1; //初始化页码=1
int PageNumCount = (136+PageSize-1) / PageSize;//记算总页数
//计算要显示的页码
String strPageNum = request.getParameter("page");//取得提交的页码
if(strPageNum==null){ //表明在QueryString中没有page这一个参数,此时显示第一页数据
PageNum = 1;
}
else{
PageNum = java.lang.Integer.parseInt(strPageNum);//将字符串转换成整型
if(PageNum<1) PageNum = 1;
}
if(PageNum>PageNumCount) PageNum = PageNumCount;//调整待显示的页码
%>
JSP例程 - 数据分页显示 -JDK1.2
<%
if(PageNumCount>0){
out.println(PageNum);//显示数据,此处只简单的显示页数
}
/*需要显示的数据,在此处显示
、、、
例如:
*/
//显示一个简单的表格
%>
总数
页数
第页 共页
">下一页
1){%>">上一页
---------------------------------
一个bean,按照文档说的用。也希望你给出修改意见。
package mshtang.html;
/**
* Title: DataBaseQuery
*
Description: 用于数据库翻页查询操作
*
Copyright: 厦门一方软件公司版权所有Copyright (c) 2002
*
Company: 厦门一方软件公司
* @author 小唐蔡
* @version 1.0
*/
import java.sql.*;
import javax.servlet.http.*;
import java.util.*;
import mshtang.StringAction;
public class DataBaseQuery
{
private HttpServletRequest request;
private StringAction S;
private String sql;
private String userPara;
private String[][] resultArray;
private String[] columnNameArray;
private String[] columnTypeArray;
private int pageSize;
private int columnCount;
private int currentPageNum;
private int currentPageRecordNum;
private int totalPages;
private int pageStartRecord;
private int totalRecord;
private static boolean initSuccessful;
private String currentJSPPageName;
private String displayMessage;
public DataBaseQuery()
{
S = new StringAction();
sql = "";
pageSize = 10;
totalRecord = 0;
initSuccessful = false;
currentJSPPageName = "";
displayMessage = "";
columnNameArray = null;
columnTypeArray = null;
currentPageRecordNum = 0;
columnCount = 0;
}
/**功能:数据库初始化操作,其它操作的前提。
*
* @param conn:数据库连接;
* @param request:jsp页面request对象;
* @param querySQL:查询语句;
* @param pageSize:每页显示记录数;
* @param startPageNum:开始显示页码
*/
public void init(Connection conn, HttpServletRequest request, String querySQL, int pageSize, int startPageNum)
{
if(conn != null)
{
this.request = request;
this.sql = request.getParameter("querySQL");
this.userPara = request.getParameter("userPara");
if(sql == null || sql.equals(""))
{
sql = querySQL;
}
if(this.userPara == null)
{
this.userPara = "";
}
if(S.isContains(sql, "select;from", ";", true))
{
try
{
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
columnCount = rsmd.getColumnCount();
columnNameArray = new String[columnCount];
columnTypeArray = new String[columnCount];
String columnName;
String value;
while(rs.next())
{
totalRecord++;
if(totalRecord == 1)
{
for(int i = 0; i < columnCount; i++)
{
columnNameArray[i] = rsmd.getColumnName(i + 1);
columnTypeArray[i] = rsmd.getColumnTypeName(i + 1);
}
}
}
rs.close();
//在总记录数大于0的情况下进行下列操作
//获取链接图象
if(totalRecord > 0 && pageSize > 0 && columnCount > 0 && startPageNum > 0)
{
//获取总页数
totalPages = totalRecord / pageSize;
int tempNum = totalRecord % pageSize;
if(tempNum != 0)
{
totalPages++;
}
//获得当前页页码
String currentPage = request.getParameter("currentPageNum");
currentPageNum = (currentPage == null || currentPage.equals(""))? startPageNum:Integer.parseInt(currentPage);
currentPageNum = (currentPageNum > totalPages)?totalPages:currentPageNum;
currentPageNum = (currentPageNum <= 0)?1:currentPageNum;
//获得当前页起始显示记录数
pageStartRecord = (currentPageNum - 1) * pageSize + 1;
pageStartRecord = (pageStartRecord <= 0)?1:pageStartRecord;
pageStartRecord = (pageStartRecord > totalRecord)?totalRecord:pageStartRecord;
//获得当前页显示记录数
if(currentPageNum * pageSize > totalRecord)
{
currentPageRecordNum = totalRecord - (currentPageNum - 1) * pageSize;
}
else
{
currentPageRecordNum = pageSize;
}
resultArray = new String[currentPageRecordNum][columnCount];
//用于跳过前面不需显示的记录
int continueRowNum = 0;
//用于跳过后面不再显示的记录
int breakRowNum = 0;
ResultSet rs2 = st.executeQuery(sql);
while(rs2.next())
{
//跳过前面不需显示的记录
continueRowNum++;
if(continueRowNum < pageStartRecord)
{
continue;
}
//存取当前页需显示的记录到二维数组
for(int i = 0; i < columnCount; i++)
{
value = rs2.getString(columnNameArray[i]);
value = (value == null)?"":value.trim();
resultArray[breakRowNum][i] = value;
}
//跳过后面不再显示的记录
breakRowNum++;
if(breakRowNum >= currentPageRecordNum)
{
break;
}
}
rs2.close();
}
st.close();
}
catch(SQLException e)
{
e.printStackTrace();
}
}
transferSQL(sql);
initSuccessful = true;
}
}
/**功能:数据库初始化操作,其它操作的前提,默认每页显示10条记录。
*
* @param conn:数据库连接;
* @param request:jsp页面request对象;
* @param querySQL:查询语句;
* @param startPageNum:开始显示页码
*/
public void init(Connection conn, HttpServletRequest request, String querySQL, int startPageNum)
{
init(conn, request, querySQL, 10, startPageNum);
}
/**功能:数据库初始化操作,其它操作的前提,默认从第一页开始显示。
*
* @param conn:数据库连接;
* @param request:jsp页面request对象;
* @param querySQL:查询语句;
* @param pageSize:每页显示记录数;
*/
public void init(Connection conn, HttpServletRequest request, int pageSize, String querySQL)
{
init(conn, request, querySQL, pageSize, 1);
}
/**功能:数据库初始化操作,其它操作的前提,默认从第一页开始显示,每页显示10条记录。
*
* @param conn:数据库连接;
* @param request:jsp页面request对象;
* @param querySQL:查询语句;
*/
public void init(Connection conn, HttpServletRequest request, String querySQL)
{
init(conn, request, querySQL, 10, 1);
}
/**功能:给出没有初始化的提醒信息,内部调用。
*
*/
private static void getMessage()
{
if(!initSuccessful)
{
System.out.println("没有完成初始化");
}
}
/**功能:得到查询结果的总记录数。
*
* @return
*/
public int getTotalRecord()
{
getMessage();
return totalRecord;
}
/**功能:得到当前页的页码
*
* @return
*/
public int getCurrentPageNum()
{
getMessage();
return currentPageNum;
}
/**功能:获得当前页记录数
*
* @return
*/
public int getCurrentPageRecord()
{
getMessage();
return currentPageRecordNum;
}
/**功能:获得总页数
*
* @return
*/
public int getTotalPages()
{
getMessage();
return totalPages;
}
/**获得调用该javaBean的jsp页面文件名,用于翻页操作,可以免去外界输入页面参数的错误,用于内部调用。
*
* @return:调用该javaBean的jsp页面文件名
*/
private String getCurrentJSPPageName()
{
getMessage();
if(request != null)
{
String tempPage = request.getRequestURI();
String[] tempArray = S.stringSplit(tempPage, "/");
if(tempArray != null && tempArray.length > 0)
{
currentJSPPageName = tempArray[tempArray.length - 1];
}
}
return currentJSPPageName;
}
/**功能:用于显示图片链接或字符串(上一页、下一页等链接)。用于翻页操作,内部调用
*
* @param imageSource:图片来源;
* @param i:翻页信息,1表示第一页,2表示上一页,3表示下一页,4表示尾页,
* @return:显示的链接图片或链接文字
*/
private void displayMessage(String imageSource, int i)
{
getMessage();
if(imageSource != null && !imageSource.equals(""))
{
displayMessage = "";
}
else
{
switch(i)
{
case 1:
displayMessage = "[首页]";
break;
case 2:
displayMessage = "[上一页]";
break;
case 3:
displayMessage = "[下一页]";
break;
case 4:
displayMessage = "[尾页]";
}
}
}
/**功能:链接到相应页面,内部调用。
*
* @param imageSource:图片来源;
* @param i:翻页信息,1表示第一页,2表示上一页,3表示下一页,4表示尾页,
* @return:相应页面的链接
*/
private String getNavigation(String imageSource, int i)
{
displayMessage(imageSource, i);
int pageNum = 0;
switch(i)
{
case 1:
pageNum = 1;
break;
case 2:
pageNum = currentPageNum - 1;
break;
case 3:
pageNum = currentPageNum + 1;
break;
case 4:
pageNum = totalPages;
}
currentJSPPageName = "" + displayMessage + "";
if(((currentPageNum == 1 || totalPages == 0) && (i == 1 || i == 2)) || (currentPageNum == totalPages && (i == 3 || i == 4)))
{
currentJSPPageName = displayMessage;
}
return currentJSPPageName;
}
/**功能:翻到第一页。以图片显示。
*
* @param imageSource
* @return
*/
public String firstPage(String imageSource)
{
return makePages(imageSource, 1);
}
/**功能:方法重载。翻到第一页,以文字显示。
*
* @return
*/
public String firstPage()
{
return firstPage("");
}
/**功能:翻到上一页,以图片显示链接。
*
* @return
*/
public String nextPage(String imageSource)
{
return makePages(imageSource, 3);
}
/**功能:方法重载。翻到下一页,以文字显示。
*
* @return
*/
public String nextPage()
{
return nextPage("");
}
/**功能:翻到上一页,以图片显示链接。
*
* @return
*/
public String previousPage(String imageSource)
{
return makePages(imageSource, 2);
}
/**功能:方法重载。翻到上一页,以文字显示。
*
* @return
*/
public String previousPage()
{
return previousPage("");
}
/**功能:方法重载。翻到尾页,以图片显示链接。
*
* @return
*/
public String lastPage(String imageSource)
{
return makePages(imageSource, 4);
}
/**功能:方法重载。翻到尾页,以文字显示链接。
*
* @return
*/
public String lastPage()
{
return lastPage("");
}
/**功能:得到查询记录中某字段的值。
*
* @param recordIndex:记录索引号,从0开始。
* @param columnName:字段名;
* @return:有结果返回该字段的值,否则为"";
*/
public String getColumnValue(int recordIndex, String columnName)
{
getMessage();
String columnValue = "";
if(recordIndex >=0 && recordIndex < currentPageRecordNum)
{
int columnIndex = S.findElementIndexOfArray(columnNameArray, columnName, true);
if(resultArray != null && columnIndex != -1)
{
columnValue = resultArray[recordIndex][columnIndex];
}
}
return columnValue;
}
/**功能:方法重载。返回特定行特定列的值。
*
* @param recordIndex:行索引,从0开始;
* @param columnIndex:列索引,从1开始;
* @return
*/
public String g
7. JSP+MYSQL分页这么弄?
作为参考:
<%
//变量声明
java.sql.Connection sqlCon; //数据库连接对象
java.sql.Statement sqlStmt; //SQL语句对象
java.sql.ResultSet sqlRst; //结果集对象
java.lang.String strCon; //数据库连接字符串
java.lang.String strSQL; //SQL语句
int intPageSize; //一页显示的记录数
int intRowCount; //记录总数
int intPageCount; //总页数
int intPage; //待显示页码
java.lang.String strPage;
int i;
//设置一页显示的记录数
intPageSize = 2;
//取得待显示页码
strPage = request.getParameter("page");
if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据
intPage = 1;
}
else{//将字符串转换成整型
intPage = java.lang.Integer.parseInt(strPage);
if(intPage<1) intPage = 1;
}
//装载JDBC驱动程序
java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
//设置数据库连接字符串
strCon = "jdbc:oracle:thin:@linux:1521:ora4cweb";
//连接数据库
sqlCon = java.sql.DriverManager.getConnection(strCon,"hzq","hzq");
//创建一个可以滚动的只读的SQL语句对象
sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
//准备SQL语句
strSQL = "select name,age from test";
//执行SQL语句并获取结果集
sqlRst = sqlStmt.executeQuery(strSQL);
//获取记录总数
sqlRst.last();
intRowCount = sqlRst.getRow();
//记算总页数
intPageCount = (intRowCount+intPageSize-1) / intPageSize;
//调整待显示的页码
if(intPage>intPageCount) intPage = intPageCount;
%>
JSP数据库操作例程 - 数据分页显示 - JDBC 2.0 - Oracle
姓名
年龄
<%
if(intPageCount>0){
//将记录指针定位到待显示页的第一条记录上
sqlRst.absolute((intPage-1) * intPageSize + 1);
//显示数据
i = 0;
while(i<intPageSize && !sqlRst.isAfterLast()){
%>
<%
sqlRst.next();
i++;
}
}
%>
第页 共页 ">下一页 1){%>">上一页
<%
//关闭结果集
sqlRst.close();
//关闭SQL语句对象
sqlStmt.close();
//关闭数据库
sqlCon.close();
%>
可以试试先!
祝你好运!
----------------------------------
也可以用jsp+xml+html来实现,下面给出一个saucer(思归)给的xml+html的分页例子,不妨参考一下:
Gambardella, Matthew
XML Developer's Guide
Computer
44.95
2000-10-01
An in-depth look at creating applications
with XML.
Ralls, Kim
Midnight Rain
Fantasy
5.95
2000-12-16
A former architect battles corporate zombies,
an evil sorceress, and her own childhood to become queen
of the world.
Corets, Eva
Maeve Ascendant
Fantasy
5.95
2000-11-17
After the collapse of a nanotechnology
society in England, the young survivors lay the
foundation for a new society.
Corets, Eva
Oberon's Legacy
Fantasy
5.95
2001-03-10
In post-apocalypse England, the mysterious
agent known only as Oberon helps to create a new life
for the inhabitants of London. Sequel to Maeve
Ascendant.
Corets, Eva
The Sundered Grail
Fantasy
5.95
2001-09-10
The two daughters of Maeve, half-sisters,
battle one another for control of England. Sequel to
Oberon's Legacy.
Randall, Cynthia
Lover Birds
Romance
4.95
2000-09-02
When Carla meets Paul at an ornithology
conference, tempers fly as feathers get ruffled.
Thurman, Paula
Splish Splash
Romance
4.95
2000-11-02
A deep sea diver finds true love twenty
thousand leagues beneath the sea.
Knorr, Stefan
Creepy Crawlies
Horror
4.95
2000-12-06
An anthology of horror stories about roaches,
centipedes, scorpions and other insects.
TitleAuthorGenrePublish DatePrice
------------------------------------
分页显示的模板程序
<%
int PageSize = 10;//设置一页显示的记录数
int PageNum = 1; //初始化页码=1
int PageNumCount = (136+PageSize-1) / PageSize;//记算总页数
//计算要显示的页码
String strPageNum = request.getParameter("page");//取得提交的页码
if(strPageNum==null){ //表明在QueryString中没有page这一个参数,此时显示第一页数据
PageNum = 1;
}
else{
PageNum = java.lang.Integer.parseInt(strPageNum);//将字符串转换成整型
if(PageNum<1) PageNum = 1;
}
if(PageNum>PageNumCount) PageNum = PageNumCount;//调整待显示的页码
%>
JSP例程 - 数据分页显示 -JDK1.2
<%
if(PageNumCount>0){
out.println(PageNum);//显示数据,此处只简单的显示页数
}
/*需要显示的数据,在此处显示
、、、
例如:
*/
//显示一个简单的表格
%>
总数
页数
第页 共页
">下一页
1){%>">上一页
---------------------------------
一个bean,按照文档说的用。也希望你给出修改意见。
package mshtang.html;
/**
* Title: DataBaseQuery
*
Description: 用于数据库翻页查询操作
*
Copyright: 厦门一方软件公司版权所有Copyright (c) 2002
*
Company: 厦门一方软件公司
* @author 小唐蔡
* @version 1.0
*/
import java.sql.*;
import javax.servlet.http.*;
import java.util.*;
import mshtang.StringAction;
public class DataBaseQuery
{
private HttpServletRequest request;
private StringAction S;
private String sql;
private String userPara;
private String[][] resultArray;
private String[] columnNameArray;
private String[] columnTypeArray;
private int pageSize;
private int columnCount;
private int currentPageNum;
private int currentPageRecordNum;
private int totalPages;
private int pageStartRecord;
private int totalRecord;
private static boolean initSuccessful;
private String currentJSPPageName;
private String displayMessage;
public DataBaseQuery()
{
S = new StringAction();
sql = "";
pageSize = 10;
totalRecord = 0;
initSuccessful = false;
currentJSPPageName = "";
displayMessage = "";
columnNameArray = null;
columnTypeArray = null;
currentPageRecordNum = 0;
columnCount = 0;
}
/**功能:数据库初始化操作,其它操作的前提。
*
* @param conn:数据库连接;
* @param request:jsp页面request对象;
* @param querySQL:查询语句;
* @param pageSize:每页显示记录数;
* @param startPageNum:开始显示页码
*/
public void init(Connection conn, HttpServletRequest request, String querySQL, int pageSize, int startPageNum)
{
if(conn != null)
{
this.request = request;
this.sql = request.getParameter("querySQL");
this.userPara = request.getParameter("userPara");
if(sql == null || sql.equals(""))
{
sql = querySQL;
}
if(this.userPara == null)
{
this.userPara = "";
}
if(S.isContains(sql, "select;from", ";", true))
{
try
{
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
columnCount = rsmd.getColumnCount();
columnNameArray = new String[columnCount];
columnTypeArray = new String[columnCount];
String columnName;
String value;
while(rs.next())
{
totalRecord++;
if(totalRecord == 1)
{
for(int i = 0; i < columnCount; i++)
{
columnNameArray[i] = rsmd.getColumnName(i + 1);
columnTypeArray[i] = rsmd.getColumnTypeName(i + 1);
}
}
}
rs.close();
//在总记录数大于0的情况下进行下列操作
//获取链接图象
if(totalRecord > 0 && pageSize > 0 && columnCount > 0 && startPageNum > 0)
{
//获取总页数
totalPages = totalRecord / pageSize;
int tempNum = totalRecord % pageSize;
if(tempNum != 0)
{
totalPages++;
}
//获得当前页页码
String currentPage = request.getParameter("currentPageNum");
currentPageNum = (currentPage == null || currentPage.equals(""))? startPageNum:Integer.parseInt(currentPage);
currentPageNum = (currentPageNum > totalPages)?totalPages:currentPageNum;
currentPageNum = (currentPageNum <= 0)?1:currentPageNum;
//获得当前页起始显示记录数
pageStartRecord = (currentPageNum - 1) * pageSize + 1;
pageStartRecord = (pageStartRecord <= 0)?1:pageStartRecord;
pageStartRecord = (pageStartRecord > totalRecord)?totalRecord:pageStartRecord;
//获得当前页显示记录数
if(currentPageNum * pageSize > totalRecord)
{
currentPageRecordNum = totalRecord - (currentPageNum - 1) * pageSize;
}
else
{
currentPageRecordNum = pageSize;
}
resultArray = new String[currentPageRecordNum][columnCount];
//用于跳过前面不需显示的记录
int continueRowNum = 0;
//用于跳过后面不再显示的记录
int breakRowNum = 0;
ResultSet rs2 = st.executeQuery(sql);
while(rs2.next())
{
//跳过前面不需显示的记录
continueRowNum++;
if(continueRowNum < pageStartRecord)
{
continue;
}
//存取当前页需显示的记录到二维数组
for(int i = 0; i < columnCount; i++)
{
value = rs2.getString(columnNameArray[i]);
value = (value == null)?"":value.trim();
resultArray[breakRowNum][i] = value;
}
//跳过后面不再显示的记录
breakRowNum++;
if(breakRowNum >= currentPageRecordNum)
{
break;
}
}
rs2.close();
}
st.close();
}
catch(SQLException e)
{
e.printStackTrace();
}
}
transferSQL(sql);
initSuccessful = true;
}
}
/**功能:数据库初始化操作,其它操作的前提,默认每页显示10条记录。
*
* @param conn:数据库连接;
* @param request:jsp页面request对象;
* @param querySQL:查询语句;
* @param startPageNum:开始显示页码
*/
public void init(Connection conn, HttpServletRequest request, String querySQL, int startPageNum)
{
init(conn, request, querySQL, 10, startPageNum);
}
/**功能:数据库初始化操作,其它操作的前提,默认从第一页开始显示。
*
* @param conn:数据库连接;
* @param request:jsp页面request对象;
* @param querySQL:查询语句;
* @param pageSize:每页显示记录数;
*/
public void init(Connection conn, HttpServletRequest request, int pageSize, String querySQL)
{
init(conn, request, querySQL, pageSize, 1);
}
/**功能:数据库初始化操作,其它操作的前提,默认从第一页开始显示,每页显示10条记录。
*
* @param conn:数据库连接;
* @param request:jsp页面request对象;
* @param querySQL:查询语句;
*/
public void init(Connection conn, HttpServletRequest request, String querySQL)
{
init(conn, request, querySQL, 10, 1);
}
/**功能:给出没有初始化的提醒信息,内部调用。
*
*/
private static void getMessage()
{
if(!initSuccessful)
{
System.out.println("没有完成初始化");
}
}
/**功能:得到查询结果的总记录数。
*
* @return
*/
public int getTotalRecord()
{
getMessage();
return totalRecord;
}
/**功能:得到当前页的页码
*
* @return
*/
public int getCurrentPageNum()
{
getMessage();
return currentPageNum;
}
/**功能:获得当前页记录数
*
* @return
*/
public int getCurrentPageRecord()
{
getMessage();
return currentPageRecordNum;
}
/**功能:获得总页数
*
* @return
*/
public int getTotalPages()
{
getMessage();
return totalPages;
}
/**获得调用该javaBean的jsp页面文件名,用于翻页操作,可以免去外界输入页面参数的错误,用于内部调用。
*
* @return:调用该javaBean的jsp页面文件名
*/
private String getCurrentJSPPageName()
{
getMessage();
if(request != null)
{
String tempPage = request.getRequestURI();
String[] tempArray = S.stringSplit(tempPage, "/");
if(tempArray != null && tempArray.length > 0)
{
currentJSPPageName = tempArray[tempArray.length - 1];
}
}
return currentJSPPageName;
}
/**功能:用于显示图片链接或字符串(上一页、下一页等链接)。用于翻页操作,内部调用
*
* @param imageSource:图片来源;
* @param i:翻页信息,1表示第一页,2表示上一页,3表示下一页,4表示尾页,
* @return:显示的链接图片或链接文字
*/
private void displayMessage(String imageSource, int i)
{
getMessage();
if(imageSource != null && !imageSource.equals(""))
{
displayMessage = "";
}
else
{
switch(i)
{
case 1:
displayMessage = "[首页]";
break;
case 2:
displayMessage = "[上一页]";
break;
case 3:
displayMessage = "[下一页]";
break;
case 4:
displayMessage = "[尾页]";
}
}
}
/**功能:链接到相应页面,内部调用。
*
* @param imageSource:图片来源;
* @param i:翻页信息,1表示第一页,2表示上一页,3表示下一页,4表示尾页,
* @return:相应页面的链接
*/
private String getNavigation(String imageSource, int i)
{
displayMessage(imageSource, i);
int pageNum = 0;
switch(i)
{
case 1:
pageNum = 1;
break;
case 2:
pageNum = currentPageNum - 1;
break;
case 3:
pageNum = currentPageNum + 1;
break;
case 4:
pageNum = totalPages;
}
currentJSPPageName = "" + displayMessage + "";
if(((currentPageNum == 1 || totalPages == 0) && (i == 1 || i == 2)) || (currentPageNum == totalPages && (i == 3 || i == 4)))
{
currentJSPPageName = displayMessage;
}
return currentJSPPageName;
}
/**功能:翻到第一页。以图片显示。
*
* @param imageSource
* @return
*/
public String firstPage(String imageSource)
{
return makePages(imageSource, 1);
}
/**功能:方法重载。翻到第一页,以文字显示。
*
* @return
*/
public String firstPage()
{
return firstPage("");
}
/**功能:翻到上一页,以图片显示链接。
*
* @return
*/
public String nextPage(String imageSource)
{
return makePages(imageSource, 3);
}
/**功能:方法重载。翻到下一页,以文字显示。
*
* @return
*/
public String nextPage()
{
return nextPage("");
}
/**功能:翻到上一页,以图片显示链接。
*
* @return
*/
public String previousPage(String imageSource)
{
return makePages(imageSource, 2);
}
/**功能:方法重载。翻到上一页,以文字显示。
*
* @return
*/
public String previousPage()
{
return previousPage("");
}
/**功能:方法重载。翻到尾页,以图片显示链接。
*
* @return
*/
public String lastPage(String imageSource)
{
return makePages(imageSource, 4);
}
/**功能:方法重载。翻到尾页,以文字显示链接。
*
* @return
*/
public String lastPage()
{
return lastPage("");
}
/**功能:得到查询记录中某字段的值。
*
* @param recordIndex:记录索引号,从0开始。
* @param columnName:字段名;
* @return:有结果返回该字段的值,否则为"";
*/
public String getColumnValue(int recordIndex, String columnName)
{
getMessage();
String columnValue = "";
if(recordIndex >=0 && recordIndex < currentPageRecordNum)
{
int columnIndex = S.findElementIndexOfArray(columnNameArray, columnName, true);
if(resultArray != null && columnIndex != -1)
{
columnValue = resultArray[recordIndex][columnIndex];
}
}
return columnValue;
}
/**功能:方法重载。返回特定行特定列的值。
*
* @param recordIndex:行索引,从0开始;
* @param columnIndex:列索引,从1开始;
* @return
*/
public String g
8. return !(total%2)? 1:0;是什么意思
total能被2整除的话,返回1;else 返回0
total%2得到的是余数,整除的话得到0,取!得到1,即真。
?:操作符的意思是条件为真,取前者,否则取后者。
明白了吗?