代码提交分页
This commit is contained in:
@@ -42,8 +42,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter{
|
||||
"/css/**",
|
||||
"/js/**",
|
||||
"/images/**",
|
||||
"/static/**",
|
||||
"/index/**"
|
||||
"/static/**"
|
||||
);
|
||||
}
|
||||
/**
|
||||
@@ -69,7 +68,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter{
|
||||
.loginProcessingUrl("/login") //登录POST请求路径
|
||||
.usernameParameter("username") //登录用户名参数
|
||||
.passwordParameter("password") //登录密码参数
|
||||
.defaultSuccessUrl("/main") //默认登录成功页面
|
||||
.defaultSuccessUrl("/index") //默认登录成功页面
|
||||
.and()
|
||||
.exceptionHandling()
|
||||
.accessDeniedHandler(customAccessDeniedHandler) //无权限处理器
|
||||
|
||||
@@ -5,7 +5,9 @@ import java.util.Map;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
import com.yaoyuan.jiscuss.entity.Posts;
|
||||
import com.yaoyuan.jiscuss.entity.UserInfo;
|
||||
import com.yaoyuan.jiscuss.service.IPostsService;
|
||||
import org.json.JSONObject;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -39,8 +41,9 @@ public class UserPostController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ITagsService tagsService;
|
||||
|
||||
|
||||
@Autowired
|
||||
private IPostsService postsService;
|
||||
|
||||
//首页查看主题列表(各种条件筛选,最热最新标签等)
|
||||
|
||||
@@ -92,6 +95,28 @@ public class UserPostController extends BaseController {
|
||||
//删除主题
|
||||
|
||||
//新建评论
|
||||
@PostMapping(value = "/newpost")
|
||||
@ResponseBody
|
||||
public String newPosts(@RequestBody Posts posts) {
|
||||
logger.info(">>> newpost"+posts);
|
||||
|
||||
ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes();
|
||||
HttpServletRequest request = servletRequestAttributes.getRequest();
|
||||
|
||||
UserInfo user = getUserInfo(request);
|
||||
if(user != null){
|
||||
posts.setCreate_id( user.getId());
|
||||
}
|
||||
posts.setCreate_time(new Date());
|
||||
|
||||
Posts savePost = postsService.insert(posts);
|
||||
JSONObject resultobj = new JSONObject();
|
||||
|
||||
logger.info(">>>{}",savePost );
|
||||
resultobj.put("msg", "添加成功");
|
||||
resultobj.put("flag", true);
|
||||
return resultobj.toString(); //
|
||||
}
|
||||
|
||||
//删除评论
|
||||
|
||||
|
||||
@@ -39,17 +39,23 @@ public class UserSystemController extends BaseController {
|
||||
private ITagsService tagsService;
|
||||
|
||||
//首页
|
||||
@RequestMapping("/")
|
||||
public String home(HttpServletRequest request, ModelMap map) {
|
||||
@RequestMapping({"/","/main","/index"})
|
||||
public String home(@RequestParam(defaultValue = "all") String tag, @RequestParam(defaultValue = "all") String type,@RequestParam(defaultValue = "1") Integer
|
||||
pageNum, HttpServletRequest request, ModelMap map) {
|
||||
logger.info(">>> index");
|
||||
logger.info(">>> tag:" + tag);
|
||||
logger.info(">>> pageNum:" + pageNum);
|
||||
List<Users> userall = usersService.getAllList();
|
||||
logger.info(">>> 第一遍的全部用户:"+userall);
|
||||
|
||||
List<Users> useral2 = usersService.getAllList();
|
||||
logger.info(">>> 第二遍的全部用户:"+useral2);
|
||||
|
||||
int pageSiz = 5;
|
||||
int pageNumNew = pageNum - 1;
|
||||
|
||||
//分页获取主题帖子
|
||||
Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20);
|
||||
Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(pageNumNew,pageSiz);
|
||||
|
||||
List<Discussions> allDiscussions =allDiscussionsPage.getContent();
|
||||
|
||||
@@ -67,6 +73,10 @@ public class UserSystemController extends BaseController {
|
||||
map.put("allDiscussions", allDiscussions);
|
||||
map.put("pageDiscussions", pageNumList);
|
||||
map.put("allTags", allTags);
|
||||
|
||||
map.put("tag", tag);
|
||||
map.put("pageNum", pageNum);
|
||||
map.put("pageNumAll", pageNumList.size());
|
||||
UserInfo user = getUserInfo(request);
|
||||
if(user != null){
|
||||
map.put("username", user.getUsername());
|
||||
@@ -76,52 +86,43 @@ public class UserSystemController extends BaseController {
|
||||
}
|
||||
|
||||
|
||||
//首页main
|
||||
@RequestMapping("/main")
|
||||
public String homePage(HttpServletRequest request, ModelMap map) {
|
||||
logger.info(">>> index");
|
||||
|
||||
//分页获取主题帖子
|
||||
Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20);
|
||||
|
||||
List<Discussions> allDiscussions =allDiscussionsPage.getContent();
|
||||
|
||||
logger.info("全部主题==>:{}",allDiscussions);
|
||||
|
||||
//获取主题帖子的分页数据
|
||||
List<String> pageNumList = getPageNumList(allDiscussionsPage.getTotalPages());
|
||||
|
||||
//获取所有标签(以后尝试去缓存中取)
|
||||
List<Tags> allTags = tagsService.getAllList();
|
||||
logger.info("全部标签==>:{}",allTags);
|
||||
|
||||
map.put("data", "Jiscuss 用户");
|
||||
map.put("allDiscussions", allDiscussions);
|
||||
map.put("pageDiscussions", pageNumList);
|
||||
map.put("allTags", allTags);
|
||||
UserInfo user = getUserInfo(request);
|
||||
if(user != null){
|
||||
map.put("username", user.getUsername());
|
||||
map.put("data", "Jiscuss 用户:" + user.getUsername());
|
||||
}
|
||||
return "index";
|
||||
}
|
||||
// //首页main
|
||||
// @RequestMapping("/main")
|
||||
// public String homePage(HttpServletRequest request, ModelMap map) {
|
||||
// logger.info(">>> index");
|
||||
//
|
||||
// //分页获取主题帖子
|
||||
// Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20);
|
||||
//
|
||||
// List<Discussions> allDiscussions =allDiscussionsPage.getContent();
|
||||
//
|
||||
// logger.info("全部主题==>:{}",allDiscussions);
|
||||
//
|
||||
// //获取主题帖子的分页数据
|
||||
// List<String> pageNumList = getPageNumList(allDiscussionsPage.getTotalPages());
|
||||
//
|
||||
// //获取所有标签(以后尝试去缓存中取)
|
||||
// List<Tags> allTags = tagsService.getAllList();
|
||||
// logger.info("全部标签==>:{}",allTags);
|
||||
//
|
||||
// map.put("data", "Jiscuss 用户");
|
||||
// map.put("allDiscussions", allDiscussions);
|
||||
// map.put("pageDiscussions", pageNumList);
|
||||
// map.put("allTags", allTags);
|
||||
// UserInfo user = getUserInfo(request);
|
||||
// if(user != null){
|
||||
// map.put("username", user.getUsername());
|
||||
// map.put("data", "Jiscuss 用户:" + user.getUsername());
|
||||
// }
|
||||
// return "index";
|
||||
// }
|
||||
|
||||
|
||||
private List<String> getPageNumList(int size) {
|
||||
List<String> pageNumList = new ArrayList<String>();
|
||||
if(size>5) {
|
||||
pageNumList.add("1");
|
||||
pageNumList.add("2");
|
||||
pageNumList.add("...");
|
||||
pageNumList.add(""+(size-1));
|
||||
pageNumList.add(""+(size));
|
||||
|
||||
}else {
|
||||
for(int i = 0;i<size;i++) {
|
||||
pageNumList.add(""+(i+1));
|
||||
}
|
||||
}
|
||||
for(int i = 0;i<size;i++) {
|
||||
pageNumList.add(""+(i+1));
|
||||
}
|
||||
return pageNumList;
|
||||
}
|
||||
|
||||
|
||||
@@ -7,7 +7,13 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import com.yaoyuan.jiscuss.entity.Posts;
|
||||
import com.yaoyuan.jiscuss.repository.PostsRepository;
|
||||
import com.yaoyuan.jiscuss.service.IPostsService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.transaction.Transactional;
|
||||
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
public class PostsServiceImpl implements IPostsService {
|
||||
@Autowired
|
||||
private PostsRepository postsRepository;
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
|
||||
let discussionsId = null;
|
||||
|
||||
function setDiscussionsId(id) {
|
||||
console.log('setDiscussionsId:'+id);
|
||||
discussionsId = id; // id
|
||||
}
|
||||
$("#addPost").click(function () {
|
||||
console.log("点击 addPost");
|
||||
console.log(username);
|
||||
console.log(discussionsId);
|
||||
|
||||
if(username && username!=null){
|
||||
var token = $("meta[name='_csrf']").attr("content");
|
||||
var header = $("meta[name='_csrf_header']").attr("content");
|
||||
console.warn(header)
|
||||
console.warn(token)
|
||||
var title = $("#postcontent").val();
|
||||
console.log(title);
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/newpost",
|
||||
data: JSON.stringify({
|
||||
content: content,
|
||||
discussion_id: discussionsId
|
||||
}),
|
||||
contentType: 'application/json',
|
||||
beforeSend: function(request) {
|
||||
request.setRequestHeader(header, token); // 添加 CSRF Token
|
||||
},
|
||||
dataType: "JSON",
|
||||
success: function (data) {
|
||||
console.log(data);
|
||||
if(data.flag){
|
||||
window.alert(title+',添加成功!');
|
||||
$('.ui.modal.createNewDiccuss').modal('hide');
|
||||
location.reload();
|
||||
}else{
|
||||
window.alert(data.msg);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
}else{
|
||||
massage('您未登录,请先登录!','');
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -1,4 +1,43 @@
|
||||
|
||||
|
||||
let pageNum = null;
|
||||
let pageAll = null;
|
||||
let pageUrl= '/';
|
||||
|
||||
function setpageNum(data,allList) {
|
||||
var url = window.location.href;
|
||||
console.log('当前url:'+url)
|
||||
if(url.indexOf('index') > 0){
|
||||
pageUrl= '/index';
|
||||
}
|
||||
console.log('当前页码:'+data)
|
||||
pageNum = parseInt(data) // pageNum
|
||||
pageAll = parseInt(allList)
|
||||
}
|
||||
|
||||
$("#upPage").click(function () {
|
||||
console.log("点击 upPage");
|
||||
console.log('当前页码:'+pageNum);
|
||||
if(pageNum > 1){
|
||||
let page = pageNum - 1
|
||||
window.location.href=pageUrl + "?pageNum=" + page;
|
||||
}else{
|
||||
massage('已经是首页!','');
|
||||
}
|
||||
});
|
||||
|
||||
$("#nextPage").click(function () {
|
||||
console.log("点击 nextPage");
|
||||
console.log('当前页码:'+pageNum);
|
||||
console.log('当前pageAll页码:'+pageAll);
|
||||
if((pageNum + 1) <= pageAll){
|
||||
let page = pageNum + 1
|
||||
window.location.href=pageUrl + "?pageNum=" + page;
|
||||
}else{
|
||||
massage('已经是尾页!','');
|
||||
}
|
||||
});
|
||||
|
||||
$("#createNewDiccuss").click(function () {
|
||||
console.log("点击 createNewDiccuss");
|
||||
console.log(username);
|
||||
@@ -46,6 +85,7 @@ $("#newdiscussions").click(function(){
|
||||
if(data.flag){
|
||||
window.alert(title+',添加成功!');
|
||||
$('.ui.modal.createNewDiccuss').modal('hide');
|
||||
location.reload();
|
||||
}else{
|
||||
window.alert(data.msg);
|
||||
return false;
|
||||
|
||||
@@ -151,35 +151,11 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ui borderless menu">
|
||||
<a class="icon item">
|
||||
<i class="left chevron icon"></i>
|
||||
</a>
|
||||
<a class="item">
|
||||
1
|
||||
</a>
|
||||
<a class="item">
|
||||
2
|
||||
</a>
|
||||
<div class="disabled item">
|
||||
...
|
||||
</div>
|
||||
<a class="item">
|
||||
10
|
||||
</a>
|
||||
<a class="item">
|
||||
11
|
||||
</a>
|
||||
<a class="icon item"> <i class="right chevron icon"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
|
||||
<form class="ui reply form">
|
||||
<div class="field">
|
||||
<textarea></textarea>
|
||||
<textarea id="postcontent"></textarea>
|
||||
</div>
|
||||
<div class="ui blue labeled submit icon button">
|
||||
<div class="ui blue labeled submit icon button" id="addPost">
|
||||
<i class="icon edit"></i> 添加评论
|
||||
</div>
|
||||
</form>
|
||||
@@ -301,10 +277,12 @@
|
||||
<#if username??>
|
||||
console.log('已经登陆:' + username);
|
||||
</#if>
|
||||
setDiscussionsId('${discussions.id}');
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="UTF-8" src="/static/js/user/discussions.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -43,4 +43,9 @@
|
||||
<a class="item" href="fixed.php#">隐私政策</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
function massage(msg,type){
|
||||
window.alert(msg);
|
||||
}
|
||||
</script>
|
||||
@@ -28,7 +28,10 @@
|
||||
</div>
|
||||
<div class="item" id="userlogin">
|
||||
<#if username??>
|
||||
${username} <a href="/logout" id="loginOut">注销</a>
|
||||
<form class="ui large form" action="/logout" id="logoutForm" method="post" style="display: none;">
|
||||
<input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
|
||||
</form>
|
||||
${username} <a href="javascript:document.getElementById('logoutForm').submit();">注销</a>
|
||||
<#else>
|
||||
<a href="/login" id="loginmodel">登录 & 注册</a>
|
||||
</#if>
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
<div class="ui container" id="container">
|
||||
<div class="ui info message">
|
||||
<i class="close icon"></i>
|
||||
<div class="header">欢迎来到这里,${data},主题数: ${allDiscussions?size} ,主题页数:${pageDiscussions?size}
|
||||
<div class="header">欢迎来到这里,${data},当前页主题数: ${allDiscussions?size} ,主题页数:${pageDiscussions?size}
|
||||
,标签数 ${allTags?size} </div>
|
||||
<ul class="list">
|
||||
<li>JAVA + DISCUSS = JISCUSS 。</li>
|
||||
@@ -377,15 +377,21 @@
|
||||
|
||||
|
||||
<div class="ui borderless menu">
|
||||
<a class="icon item">
|
||||
<a class="icon item" id="upPage">
|
||||
<i class="left chevron icon"></i>
|
||||
</a>
|
||||
<#list pageDiscussions as page>
|
||||
<a class="item">
|
||||
${page}
|
||||
</a>
|
||||
<#if page == pageNum >
|
||||
<a class="item" style=" background-color: #7d827d;" href="/?pageNum=${page}">
|
||||
${page}
|
||||
</a>
|
||||
<#else>
|
||||
<a class="item" href="/?pageNum=${page}">
|
||||
${page}
|
||||
</a>
|
||||
</#if>
|
||||
</#list>
|
||||
<a class="icon item"> <i class="right chevron icon"></i>
|
||||
<a class="icon item" id="nextPage"> <i class="right chevron icon"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -435,6 +441,10 @@
|
||||
setusername('${username}');
|
||||
console.log('已经登陆:' + username);
|
||||
</#if>
|
||||
console.log('pageNum:' + '${pageNum}');
|
||||
console.log('pageNumAll:' + '${pageNumAll}');
|
||||
|
||||
setpageNum('${pageNum}','${pageNumAll}');
|
||||
|
||||
var token = $("meta[name='_csrf']").attr("content");
|
||||
if(token == '' && username && username != null){
|
||||
@@ -443,9 +453,6 @@
|
||||
}
|
||||
});
|
||||
|
||||
function massage(msg,type){
|
||||
window.alert(msg);
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" charset="UTF-8" src="/static/js/user/system.js"></script>
|
||||
|
||||
Reference in New Issue
Block a user