Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java EE (J2EE)
Войти
Регистрация
Восстановить пароль
 
korep
52 / 45 / 18
Регистрация: 06.01.2013
Сообщений: 612
1

Выводит не тот результат

07.02.2014, 21:08. Просмотров 498. Ответов 0
Метки нет (Все метки)

Пишу простенькое веб приложение. Использую netbeans+spring+hibernate.
В результате получаю, что при запросе в базу выводит, то правильный, то не правильный ответ.
Вот страница:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<%-- 
    Document   : tdisks
    Created on : 07.02.2014, 17:12:37
    Author     : doctus
--%>
 
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="http://www.springframework.org/tags" prefix="spring" %>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>Taked Disks</h1>
            <a href="user.htm">return to User</a>
        <table>
            <c:forEach items="${disks}" var="d">
                <tr>
                    <td>
                        <form action="" method="post">
                            <input type="hidden" name="diskid" value="<c:out value="${d.disksId}" />">
                            <c:out value="${d.name}" />
                            <input type="submit" value="Return disk">
                        </form>
                    </td>
                </tr>
            </c:forEach> 
        </table>
    </body>
</html>
Добавлено через 33 секунды
Вот контроллер
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
 
package controller;
 
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
import service.TdisksService;
 
/**
 *
 * @author doctus
 */
public class TdisksController extends SimpleFormController {
    
    TdisksService tdisksService;
 
    public void setTdisksService(TdisksService tdisksService) {
        this.tdisksService = tdisksService;
    }
    
    public TdisksController() {
        //Initialize controller properties here or 
        //in the Web Application Context
 
        setCommandClass(Tdisks.class);
        setCommandName("tdisks");
        //setSuccessView("successView");
        setFormView("tdisks");
    }
    
//    @Override
//    protected void doSubmitAction(Object command) throws Exception {
//        throw new UnsupportedOperationException("Not yet implemented");
//    }
 
    //Use onSubmit instead of doSubmitAction 
    //when you need access to the Request, Response, or BindException objects     
    
     @Override
     protected ModelAndView onSubmit(
             HttpServletRequest request,
             HttpServletResponse response,
             Object command,
             BindException errors) throws Exception {
         String diskId = (String) request.getParameter("diskid");
         HttpSession hs = request.getSession();
         Users u = (Users) hs.getAttribute("user");
         tdisksService.returnDisk(u.getUsersId(), diskId);
         ModelAndView mv = new ModelAndView("redirect:/tdisks.htm");
         mv.addObject("test", diskId);
         return mv;
     }   
     
     @Override
     protected ModelAndView showForm(
             HttpServletRequest request,
             HttpServletResponse response,
             BindException errors){
         HttpSession hs = request.getSession();
         Users u = (Users) hs.getAttribute("user");
         ModelAndView mv = new ModelAndView();
         if(u != null){         
            mv.setViewName(getFormView());
            mv.addObject("name", u.getUser());
            mv.addObject("id", u.getUsersId().toString());
            List <Disks> disks = tdisksService.getTakeDisks(u.getUsersId());
            mv.addObject("disks",disks);
         }else{
             mv.setViewName("redirect:/app.htm");
         }
         return mv;
     }
  
     
}
Добавлено через 32 секунды
сервис
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
 
package service;
 
import controller.Disks;
import controller.UserHelper;
import java.util.List;
 
/**
 *
 * @author doctus
 */
public class TdisksService {
    public List <Disks> getTakeDisks(Integer UserId){
        UserHelper uh = new UserHelper();
        return uh.getTakeDisks(UserId);
    }
 
    public void returnDisk(Integer UserId, String DiskId){
        UserHelper uh = new UserHelper();
        uh.returnDisk(UserId, DiskId);
    }
}
Добавлено через 1 минуту
userhelper для работы с бд
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
 
package controller;
 
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
 
/**
 *
 * @author doctus
 */
public class UserHelper {
    
    Session session = null;
    private boolean connected;
    
    public boolean isConnected() {
        return connected;
    }
 
    public UserHelper() {
        this.session = HibernateUtil.getSessionFactory().getCurrentSession();
        connected = false; 
    }
    
    public Users connect(String name, String password){
        Users u = null;
        try{
            org.hibernate.Transaction tr = session.beginTransaction();
            Query q = session.createQuery("from Users a where a.user = '"+name+"'");
            List <Users> list = (List <Users>) q.list();
            u = list.get(0);
            
            if((u.getPassword() != null) & (password != null) & (u.getPassword().equals(password))){
                
                connected = true;
                } else {
            }
        }catch(Exception e){
            e.printStackTrace();
        }
        return u;
    }
    
    public Users getUserById(int id){
        org.hibernate.Transaction tr = session.beginTransaction();
        Query q = session.createQuery("from Users a where a.users_id = '"+Integer.toString(id)+"'");
        List <Users> list = q.list();
        Users u = (Users) list.get(0);
        return u;
    }
    
    public List<Disks> getDisksByUserId(Integer UserId){
        org.hibernate.Transaction tr = session.beginTransaction();
        Query q = session.createQuery("from Disks a where a.user = "+UserId.toString());
        return (List <Disks>) q.list();
    }
    
    public List<Disks> getFreeDisks(Integer UserId){
        org.hibernate.Transaction tr = session.beginTransaction();
        Query q = session.createQuery("from Disks a where a.user=a.has and a.user !="+UserId.toString());
        List <Disks> list = (List <Disks>) q.list();
        return list;
    }
    
    public  void getDisk(Integer UserId, String DiskId){
        org.hibernate.Transaction tr = session.beginTransaction();
        Query q = session.createSQLQuery("UPDATE disks SET has = "+UserId.toString()+" where disks_id = "+DiskId);
        q.executeUpdate();
        tr.commit();
    }
    
    public  void returnDisk(Integer UserId, String DiskId){
        org.hibernate.Transaction tr = session.beginTransaction();
        Query q = session.createSQLQuery("UPDATE disks SET has = disks.user where disks_id = "+DiskId);
        q.executeUpdate();
        tr.commit();
    }
    
    public List<Disks> getTakeDisks(Integer UserId){
        org.hibernate.Transaction tr = session.beginTransaction();
        Query q = session.createQuery("from Disks a where a.user!=a.has and a.has ="+UserId.toString());
        List <Disks> list = (List <Disks>) q.list();
        return list;
    }
}
подскажите пожалуйста, что делаю не так?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2014, 21:08
Ответы с готовыми решениями:

Код выводит неверный результат
Добрый день. Есть такой код: package Sovm; public class Drob { float...

Выводит не тот результат
Здравствуйте,сделал запрос в базу, данные записываются в таблицу, но ошибка в...

Выводит один и тот же результат при разных параметрах
Техническое задание: Даны N целых чисел x1, x2,…,xN. Расставить между ними...

Скрипт не выводит результат при исполнении в терминале, построчно результат есть. Новичок в bash
Добрый день всем. Помогите разобраться. Я новичок в написании скриптов. Первая...

Тот же код - разный результат
Форумчане! Чем объяснить разницу в аутпуте: две while - одна copy pasted с...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2014, 21:08

исправьте ошибки а то результат не тот
тут 3 задачи плиззз оч надо...выдает неправельные результаты....как исправить...

ВЫдает не тот результат как хотелось бы
имеется edit1, timer1-Interval=10000, button1-Enabled=false, в timer1 вписано...

Разные значения один и тот же результат
Ввожу разные переменные а результат выдает один и тот же. В чем может причина...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru