LINUX.ORG.RU

Сообщения papasha

 

Spring MVC + Hibernate + Maven

Доброй ночи!

Появилась необходимость освоить разработку веб-приложений на Java.

Планирую использовать фреймворк Spring MVC, Hibernate — для обращения объектно-ориентированной модели данных в реляционную базу, Maven — как инструмент для сборки проекта, Tomcat 7 — в качестве веб сервера и IntellijIDEA, чтобы работать со всеми этими приблудами в удобной среде.

Учитывая вышеназванную комплектацию:

1. Где толковые туториалы по развёртыванию простого приложения?

2. Как правильно реализовать HMVC (иерархический MVC)?

3. Что скажете насчёт spring.security? Есть ли лучшие аналоги?

 , , , ,

papasha ()

Массовое редактирование CSV базы

Не знаю, куда отнести эту тему, поэтому пишу здесь.

Есть очень большая таблица в формате csv (over 9000).

В одной из колонок имеется текст в формате: abcdefghi (jkl).

Нужно сделать из неё две колонки: в первую поместить «abcdefghi», во вторую - «jkl».

Как это сделать программно?

 

papasha ()

Динамическое изменение высоты блоков

Доброй ночи!

Этот код, как не трудно догадаться, создаёт блок и три секции в нём. Когда увеличивается высота секции, также увеличивается и высота родительского блока.

.unit { float: left; width: 100%; background: #111; }

section { display: block; float: left; box-sizing: border-box; overflow: hidden; }
<div class="unit">

    <section>
        Lorem ipsum
    </section>

    <section>
        Dolor sit amet
    </section>

</div>

Нужно, чтобы все секции в блоке были равны по высоте. Ниже рабочий пример подгонки на jQuery.

$(document).ready(function() {

    $(".unit > section").each(function() {

        $(this).css("min-height", $(this).parent().outerHeight());

    });

});

А ещё нужно, чтобы при изменении размеров окна, высота дочерних секций также изменялась под размер родительского блока. Вот с этим ничерта не получается. Точнее, при уменьшении, т.к. в моём коде min-height для каждой секции уже однозначно задан при первой загрузке страницы. Есть идеи, как такое сделать?

$(window).resize(function() {

    $(".unit > section").each(function() {

        // . . .

    });

});

 , ,

papasha ()

Javascript Cookies на сайте с SSL

Можно ли установить куки (для неконфиденциальной информации) средствами Javascript на https-домене?

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

Читает только если перехожу на http.

 , ,

papasha ()

Реклама на портале

По всему порталу есть энное количество блоков, предназначенных для отображения рекламы.

Администратор может установить в каждом блоке несколько рекламных баннеров, каждый из которых предназначен для определённой целевой аудитории.

Каждый баннер отображается или до достижения некоторого количества кликов/показов, или в течение определённго календарного времени.

Предположим, администратор установил баннер, который должен быть показан 100 раз, а затем деактивирован. Как отслеживать оставшееся количество показов? Нормально ли каждый раз обновлять уменьшать значение в базе данных? И есть ли другие способы?

В первую очередь, беспокоит вопрос, не будет ли сбоев, когда один и тот же баннер покажется сразу нескольким пользователям и к базе практически одновременно будет обращено несколько UPDATE запросов?

 ,

papasha ()

Проверка сессии Codeigniter

Здравствуйте!

В контроллере находится следующая функция:

function index()
{
        maintain_ssl();

        // If user is not signed in or dont have access to any administration modules
        if (! $this->authentication->is_signed_in() || 
            ! $this->account_access_model->is_admin($this->session->userdata('account_id')))
        {
            show_404();
        }

        // Set account related variables
        $data['my_account'] = $this->account_model->get_by_id($this->session->userdata('account_id'));
        $data['my_account_details'] = $this->account_details_model->get_by_account_id($this->session->userdata('account_id'));
        $data['my_account_access'] = $this->account_access_model->get_by_account_id($this->session->userdata('account_id'));

        // Set variables for this controller
        $data['accounts'] = $this->account_model->get_accounts();
        
        // Load view
        $data['title'] = lang('admin_accounts_page_name');
        $data['page'] = 'accounts';
        $this->load->view('admin/template', $data);
}

Она проверяет, имеет ли посетитель права доступа к панели администратора, затем подгружает необходимые переменные и выдаёт представление.

Так вот, проверка прав доступа должна быть на каждой странице панели администратора. Куда вынести блок кода, отвечающий за неё, чтобы не приходилось повторять одно и то же в каждом методе?

Предполагаю, что можно сделать контроллер, который делает extend стандартного. Как это сделать, я знаю. Только вот что написать внутри, чтобы в начале выполнения каждого метода выполнялся определённый блок кода?

 ,

papasha ()

Таблицы разных типов в одной базе данных

Здравствуйте!

Допутимо ли использовать в одной базе данных таблицы разного типа: MyISAM и InnoDB? Чем это может быть чревато?

 , ,

papasha ()

Не показывать содержимое div

Доброе утро!

Как с помощью CSS скрыть содержимое <div> блока, но показывать сам блок?

Можно обойтись без дополнительного inline элемента?

 , , ,

papasha ()

.jpg / .jpeg / .JPG / .JPEG

Доброй ночи!

Собственно, есть фотки в директории в вышеупомянутых форматах.

Нужно, чтобы каждая открывалась при обращении по любому имени.

image.jpg image.jpeg image.JPG image.JPEG

Можно так сделать?

RewriteRule ^(.+)\.jpg$ $1.JPG и подобные работают только в одном направлении.

 , , ,

papasha ()

Arch Linux / Windows 7 dual boot

Возникла необходимость в установке Windows 7 на ноутбуке. Однако, использовать только Винду не хочу по известным причинам. Поэтому решил установить ещё и Arch Linux.

Имеется один жёсткий диск с двумя партитициями под Винду.

sda1 - 100MB - windows boot loader sda2 - 50GB - windows free - 400GB

Нужно на оставшееся место установить Арч и настроить загрузчик.

Как правильно разметить партитиции? Какой загрузчик использовать?

https://wiki.archlinux.org/index.php/Windows_and_Arch_Dual_Boot - здесь не понял как всё-таки настроить загрузчик.

 , ,

papasha ()

[Web, Java, Servlet, JSP] Запрос POST без формы

Здравствуйте. :)

Хочу передать POST атрибут из сервлета в JSP страницу. Без HTML форм.

Как это можно сделать? Два дня не могу найти ничего толкового.

Безуспешно пробовал передавать таким образом:

public class PassPost extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        HttpSession session;
        String encoding;
        String urlAddress;
        URL url;
        HttpURLConnection httpURLConnection;
        StringBuilder sbContent;
        DataOutputStream stream;
        InputStream inputStream;

        // Getting current session
        session = request.getSession();

        // Setting encoding to unicode
        encoding = "UTF-8";

        // Creating URL
        urlAddress = "http://localhost:8080/page.jsp";
        url = new URL(urlAddress);

        // Http URL connection
        httpURLConnection = (HttpURLConnection)url.openConnection();
        httpURLConnection.setUseCaches(false);
        httpURLConnection.setDoOutput(true);
        httpURLConnection.setDoInput(true);
        httpURLConnection.setRequestMethod("POST");
        httpURLConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

        // String builder
        sbContent = new StringBuilder();
        sbContent.append("numid=");
        sbContent.append(URLEncoder.encode(session.getAttribute("numid").toString(), encoding));

        // Data output stream
        stream = new DataOutputStream(httpURLConnection.getOutputStream ());
        stream.writeBytes(sbContent.toString());
        stream.flush();
        stream.close();

        // Input stream
        inputStream = httpURLConnection.getInputStream();
        inputStream.close();
        response.sendRedirect(urlAddress);

    }

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        doGet(request, response);

    }

}

papasha ()

[Web, JSTL, Java] Переменная Java как параметр в JSTL теге forEach

Здравствуйте!

<% 
    String[] array = new String[2];
    array[0] = "First";
    array[1] = "Second";
%>
<% 
    for (String element : array) {
        out.println(element);
    }
%>

Можно ли переделать цикл с использованием JSTL <c:forEach></c:forEach>?

papasha ()

[JSP, JSTL] taglib

Здравствуйте!

Я использую на всех страницах сайта одни и те же taglib и для этого в начале каждой .jsp страницы их подгружаю:

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>

Можно ли в web.xml указать чтобы эти taglib работали на всех .jsp страницах?

papasha ()

Посоветуйте учебник PostgreSQL

Собственно, чтобы всё последовательно было изложено с самых основ. Можно на английском.

papasha ()

wlan0 ping

Добрый вечер!

Установил Арч на ноутбук Toshiba Satellite.

Настроил netcfg. Сделал два сетевых профиля:
1) eth0, dhcp (Atheros AR8151 v2.0 Gigabit Ethernet)
2) wlan0, dhcp (Atheros AR9285 Wireless Network Adapter PCI-E)

Указал на них в rc.conf, подключил демона net-profiles там же.
Запускаю сеть командой: netcfg <profile-name>

# ifconfig wlan0

wlan0 : flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 metric 1
        inet 192.168.1.102  netmask 255.255.255.0  broadcast 192.168.1.255
        ether 68:a3:c4:e0:f2:59  txqueuelen 1000  (Ethernet)
        RX packets 778  bytes 98422 (96.1 KiB)
        RX errors 0  dropped 410  overruns 0  frame 0
        TX packets 45  bytes 4817 (4.7 KiB)
        TX errors 0  dropped 0  overruns 0  carrier 0  collisions 0

# ping -c4 192.168.1.102

4 packets transmitted, 4 received, 0% packet loss
rtt avg = 0.041ms

# ping -c4 google.com

4 packets transmitted, 4 received, 0% packet loss
rtt avg = 55.917ms

Но когда пингую с другой машины в локальной сети (проводное подключение к рутеру), пакеты теряются:

# ping -c4 192.168.1.102

4 packets transmitted, 1 received, 75% packet loss
rtt avg = 83ms
Рутер пингуется нормально отовсюду.

Что я неправильно делаю?

Спасибо.

papasha ()

jQuery + LaTeX + PHP

Дано:

<script type='text/javascript' src='js/jquery.js'></script>

<script type='text/javascript' src='js/jquery.jslatex.js'></script>
/* LaTeX */

$(function () {  
	
	$(".latex").latex();  
		
});
	
/* Instant preview */

$(document).ready(function() {
	
	$('#live-preview-form input, #live-preview-form textarea').bind('blur keyup',function() {
	  
		$('#lp-comment').text($('#comment').val());
		
		$('#lp-comment').html($('#lp-comment').html()
		.replace(/\n/g,'<br />'));

		$('#lp-comment').html($('#lp-comment').html()
		.replace(/\[math\]/g   , '<div class=\'latex\'>').replace(/\[(\/)math\]/g  , '</div>'));
		
	});
	  
});
<!-- Textarea -->

<div id="live-preview-form" class="lp-block">

	<textarea name="comment" id="comment"></textarea>

</div>

<!-- Instant preview block -->

<div id="live-preview-display" class="lp-block">

	<div id="lp-comment"></div>

</div>

В текстовое поле вводится текст, содержащий слова, числа и математические выражения, заключённые в тег [math]..[/math]

Решите пример: [math]\int_{0}^{\pi}\frac{x^{4}\left(1-x\right)^{4}}{1+x^{2}}dx =\frac{22}{7}-\pi[/math]!

Требуется показывать в блоке под текстовым полем как будет выглядеть сообщение после обработки LaTeX-ом.

Это возможно?

papasha ()

Нестандартный шрифт документа при печати

В css импортирую нестандартный шрифт.

@font-face {
    font-family: 'ArnoProRegular';
    src: url('../fonts/arnopro-regular-webfont.eot');
    src: url('../fonts/arnopro-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/arnopro-regular-webfont.woff') format('woff'),
         url('../fonts/arnopro-regular-webfont.ttf') format('truetype'),
         url('../fonts/arnopro-regular-webfont.svg#ArnoProRegular') format('svg');
    font-weight: normal;
    font-style: normal;

}

На страницах сайта отображается правильно, но если отправить документ на печать, шрифт изменяется на стандартный.

Можно ли принудительно установить шрифт для печати?

Если нет, какой другой способ внедрения нестандартных шрифтов посоветуете? sIFR, PHP, js?

papasha ()

Тексты ошибок MySQL

Можно ли изменить текст стандартных ошибок MySQL?

Например, перевести на русский язык.

Где?

papasha ()

jQuery draggable - позиции размещения

Доброй ночи!

Есть много квадратов 60х60 пикселей. Изначально все они находятся по порядку в правом div`e. Причём в этом самом div`e у каждого квадрата есть своя единственная позиция, которую никто кроме него занять не может.

Ещё есть левый div, в котором, в свою очередь, располощены позиции для размещения квадратов из правого div`a. На каждой позиции может быть только один (любой) квадрат.

http://img534.imageshack.us/img534/5498/37410641.jpg

Собственно, вопрос: как реализовать?

http://jqueryui.com/demos/draggable/ - здесь ответа не нашёл, сам в яваскрипте плохо ориентируюсь. Надеюсь на вашу помощь.

papasha ()

Фон div'a - повторяющаяся целое кол-во раз картинка

Добрый вечер!

Есть большой резиновый div и маленькое png изображение.

Нужно заполнить div этим изображением так, чтобы оно повторилось максимальное количество раз, но не обрезалось.

Подскажите, в какую сторону копать.

papasha ()

RSS подписка на новые темы